C語言中,變數一般有兩種屬性,分別是:儲存類別、資料型別。 例如定義一個變數:staticunsignedcharvar=0;上述語句中,static(靜態的)為變數的儲存類別,unsignedchar(無符號字元型)為變數的資料型別,var為變數名,初始化值為0。 下面給你說明幾點。 儲存類別:即變數在程式碼執行期間的儲存方式。c語言提供了4種,分別是:auto(自動的)、static(靜態的)、extern(外部的)、register(暫存器的)。 預設情況下,如果不加儲存類別,則該變數是auto類的,該關鍵字可以省略,其它三個不能省。static的用法是,定義一個區域性變數,該變數只進行一次初始化,在程式執行期間一直佔用著記憶體,每次呼叫完畢都保持本次呼叫完後得到的值(而auto呼叫完一次即釋放記憶體,下次呼叫用從新進行初始化)。extern:一個變數被定義成全域性變數,加上該關鍵字,意思是提醒編譯器,該變數是在別的C檔案中(即你想再一個C檔案中呼叫另外一個C檔案的變數,需用該關鍵字進行引入)。register:定義一個變數為該儲存型別,建議編譯器將該變數存放在CUP內部暫存器中,以便該變數頻繁呼叫而提高程式碼執行速度。注意,它是建議型的,一般用在迴圈次數多的地方,因為變數一般存放在記憶體中,每次CUP訪問它都得跑到記憶體去提取,次數多了,影響執行速度。放在內部暫存器就快多了(當然放不放我們不知道,只是建議編譯器這麼做),這種變數也是用完就釋放。 資料型別:C語言提供了三種基本資料型別:char型int型float型。 預設情況下,char/int/float是指有符號的,即前面都省略了signed關鍵字,如果需要定義成無符號型的,需在前面加上不可省略的unsigned關鍵字。char佔一個位元組,int佔2個位元組(在有的環境下是4個位元組),float佔4個。表示的資料範圍也比較明確,char一個位元組8位,共256種狀態,有符號的最高位表示符號,0為正,1為負,其餘7位表示數字位,2的7次方。int型16位的,一樣。float型的資料必須要有小數點,一般float能表示6~7位有效數字。上述的資料型別中,如果範圍還不夠大,還可以定義成long型,即長整型,佔4個位元組,而浮點型可以定義成double型,可以表示16~17為小數,當然,它也只佔四個位元組。 其它還有指標型的變數,還有構造型的如結構體、共同體、列舉等等。學微控制器的還有bit型的。C語言概念很多,但都很簡單。重點是在用。世界上沒有純記憶的技術,只有一邊用一邊記憶的技術。 看到那麼多頭疼了吧?沒事,小夥子,哥看好你。 木棉城路過。
C語言中,變數一般有兩種屬性,分別是:儲存類別、資料型別。 例如定義一個變數:staticunsignedcharvar=0;上述語句中,static(靜態的)為變數的儲存類別,unsignedchar(無符號字元型)為變數的資料型別,var為變數名,初始化值為0。 下面給你說明幾點。 儲存類別:即變數在程式碼執行期間的儲存方式。c語言提供了4種,分別是:auto(自動的)、static(靜態的)、extern(外部的)、register(暫存器的)。 預設情況下,如果不加儲存類別,則該變數是auto類的,該關鍵字可以省略,其它三個不能省。static的用法是,定義一個區域性變數,該變數只進行一次初始化,在程式執行期間一直佔用著記憶體,每次呼叫完畢都保持本次呼叫完後得到的值(而auto呼叫完一次即釋放記憶體,下次呼叫用從新進行初始化)。extern:一個變數被定義成全域性變數,加上該關鍵字,意思是提醒編譯器,該變數是在別的C檔案中(即你想再一個C檔案中呼叫另外一個C檔案的變數,需用該關鍵字進行引入)。register:定義一個變數為該儲存型別,建議編譯器將該變數存放在CUP內部暫存器中,以便該變數頻繁呼叫而提高程式碼執行速度。注意,它是建議型的,一般用在迴圈次數多的地方,因為變數一般存放在記憶體中,每次CUP訪問它都得跑到記憶體去提取,次數多了,影響執行速度。放在內部暫存器就快多了(當然放不放我們不知道,只是建議編譯器這麼做),這種變數也是用完就釋放。 資料型別:C語言提供了三種基本資料型別:char型int型float型。 預設情況下,char/int/float是指有符號的,即前面都省略了signed關鍵字,如果需要定義成無符號型的,需在前面加上不可省略的unsigned關鍵字。char佔一個位元組,int佔2個位元組(在有的環境下是4個位元組),float佔4個。表示的資料範圍也比較明確,char一個位元組8位,共256種狀態,有符號的最高位表示符號,0為正,1為負,其餘7位表示數字位,2的7次方。int型16位的,一樣。float型的資料必須要有小數點,一般float能表示6~7位有效數字。上述的資料型別中,如果範圍還不夠大,還可以定義成long型,即長整型,佔4個位元組,而浮點型可以定義成double型,可以表示16~17為小數,當然,它也只佔四個位元組。 其它還有指標型的變數,還有構造型的如結構體、共同體、列舉等等。學微控制器的還有bit型的。C語言概念很多,但都很簡單。重點是在用。世界上沒有純記憶的技術,只有一邊用一邊記憶的技術。 看到那麼多頭疼了吧?沒事,小夥子,哥看好你。 木棉城路過。