extern static可以一起用嗎 static與extern都是什么意思,有什么作用?
static與extern都是什么意思,有什么作用?寄存器修飾符意味著編譯器的相應變量將被頻繁使用。如果可能的話,它們應該存儲在CPU的寄存器中,以加快它們的存儲速度。Const限制變量不被更改。使用
static與extern都是什么意思,有什么作用?
寄存器修飾符意味著編譯器的相應變量將被頻繁使用。如果可能的話,它們應該存儲在CPU的寄存器中,以加快它們的存儲速度。Const限制變量不被更改。使用const可以在一定程度上提高程序的安全性和可靠性。另外,在看別人的代碼時,清楚地理解const的作用有助于理解別人的程序。Static有兩種用法:面向過程編程中的Static和面向對象編程中的Static。前者適用于普通變量和函數(shù),不涉及類;后者主要描述靜態(tài)在類中的作用。Extern可以放在變量或函數(shù)的前面,以表示變量或函數(shù)的定義。在其他文件中,當編譯器遇到變量或函數(shù)時,它會提示編譯器在其他模塊中查找變量或函數(shù)的定義。此外,extern還可以用于指定鏈接。
C語言中Static和Extern的具體用法,有例子最好?
瀉藥,這種問題最煩人。就說我的觀點是錯誤的吧。別噴了。Extern有很多功能。如果順序是int a=2;extern int a;此時,編譯器理解extern是一個引用變量,因此當int a=2時,將其更改為static int a=2;
沒有問題,但順序是extern int a;static int a=2;extern的功能是聲明變量a。如果聲明變量a,(不同于普通int a,definition)u,你需要有一個定義,但是你定義了static int,所以編譯器認為變量a只有一個聲明但沒有定義,所以它自然會報告一個錯誤。
static函數(shù)與普通函數(shù)有什么區(qū)別?
靜態(tài)函數(shù)與普通函數(shù)的區(qū)別:使用靜態(tài)修改的函數(shù)僅限于此源代碼文件,不能由此源代碼文件以外的代碼文件調用。默認情況下,普通函數(shù)是外部函數(shù),也就是說,它們可以被其他代碼文件調用。在函數(shù)的返回類型前添加關鍵字static,函數(shù)定義為靜態(tài)函數(shù)。普通函數(shù)的定義和聲明在默認情況下是外部的,但是靜態(tài)函數(shù)只在聲明文件中可見,不能被其他文件使用。因此,定義靜態(tài)函數(shù)具有以下優(yōu)點:可以在其他文件中定義同名函數(shù),而不會產生沖突。其他文件不能使用靜態(tài)函數(shù)。