1.常量分類
(1)整型常量 只有10進製有正負整數
%d 十進位制佔位符 以10進製方式列印整型常量
%o 八進位制佔位符 以8進製方式列印整型常量
%x 十六進製制佔位符 以16進製制方式列印整型常量
10進製整型書寫 23
8進製整型書寫 0開頭 023
16進製制整型書寫 ox開頭 ox23
short int 2個位元組 16位 有符號(正負)-32768 ~ 32767
int 4個位元組 32位
long int 8個位元組 64位
u 無符號int型
ul/lu 無符號長整型
整數可以分為正整數和負整數儲存,正整數為原碼儲存,負整數為補碼儲存,第乙個為符號位,0表示負數,1表示正數
6 佔兩個位元組,分正負 可以儲存為1000000000000110 ,
得到補碼的方式:原碼->反碼(變成相反的數)->補碼(+1)
-6 00000000000000110->1111111111111001->111111111111010
(2)實型常量
一般形式的實數:由整數,小數點,小數三部分組成。整數部分或小數部分可以省略 例如,12.345、47.0、-.234、47.
指數形式的實數:由尾數,字母e/e,小數點組成 例如.2e3、1.2e-3
(3)字元常量
『0』-48 『a』-65 『a』-97
\n 換行 -10
\t 水平製表 -9
\b 退格 -8
\r 回車 -13
\f 換頁 -12
\\ 反斜槓「\」 -92
\』 單引號 -39
\「 雙引號 -34
\ddd 1到3位8進製數所代表的字元 最多擷取斜槓後面3位八進位制數
\xhh 1到2位16進製制數所代表的字元 最多擷取斜槓x後面2位16進製制數
(4)列舉常量
一般定義整型常量,不加值預設從0開始計數,依次加1,從設定值開始,從值依次加1
enum weekday;
int main(int argc, char * ar**)
}(5)巨集定義 不能加分號
(6)零值 即ascii碼值為0的字元
(7)空值 數字0,\0, 指標null
(8)const常量
作用: (1)修飾一般變數,可以把變數變成常量符號
(2)修飾指標變數
2.指標,乙個16進製制的位址
取位址符:& %p:以16進製制位址列印
取出位址的數值 :*
指標變數的一般形式
型別識別符號 *指標變數名 int a =100; int *na = &a;
必須使用同型別的變數儲存同型別的變數位址
如果初始化不賦值,需要初始化為null
char * 字串變數
const char * 字串常量
3.const修飾指標
(1)const int *p 能改變p儲存的位址,但是不可以改變儲存的位址中的資料
(2)int const *p 效果同(1)
(3)int *const p; 定義時必須初始化,不能改變位址,但可以改變儲存位址中的資料
(4)const int *const p; 既不能改變p儲存的位址,也不可以改變儲存的位址中的資料,定義時必須初始化
4.static靜態變數
(1)修飾區域性變數,第一次呼叫時開闢記憶體空間,呼叫完後不**記憶體,保留之前的資料,再次呼叫不會重新開闢記憶體和初始化
(2)靜態全域性變數,全域性變數可以被外部檔案訪問,靜態全域性變數只能被本檔案使用
5.extern關鍵字使用
(1)宣告變數的關鍵字
條件預編譯:只編譯其中的乙個條件,另乙個不編譯
#if#else
#endif
C 網路程式設計(3)
重點內容 epolloneshot模式 即使我們使用et模式,乙個socket上的某個事件還是可能被觸發多次。這在併發程式中就會引起乙個問題。比如乙個執行緒 或程序,下同 在讀取完某個socket上的資料後開始處理這些資料,而在資料的處理過程中該socket上又有新資料可讀 epollin再次被觸發...
C語言網路程式設計
server 埠號碼 numero of port client server的ip位址,以及開放的埠號碼 3個parameters,domaine af inet ipv4 type socket stream protocole 當domaine有多種選擇的時候需要填寫,在tcp ip下,一般為...
c語言程式設計(3)
上課前首先是對作業的複習鞏固,完成這些作業最重要的還是要勤於思考,有錯誤及時修改,並搞明白每個字元以及每一步的含義,我真正感到自己學的不夠紮實,或許是理解不透徹,因此不斷改錯並牢記這些易錯點顯得尤為重要。選擇結構與條件判斷 兩選擇語句 1 if語句,實現兩分支的選擇結構 2 switch語句,來實現...