1、檔案處理過程:
預處理--編譯--彙編--鏈結。
預處理:處理#include操作和巨集定義替換等。
2、ascii碼
american standard code for information interchange。ascii碼用8位二進位制數(乙個位元組)來表示乙個字元。計算機儲存的不是字元本身,而是將該字元所對應的ascii 碼放到儲存單元中。'a'-65 'b'-66。
3、字元常量
『5』 -->10進製53
4、轉義字元以反斜槓「\」開頭,後跟乙個或者多個字元,轉義字元具有特定的含義,不同於單引號內部字元原有的意義。故稱為轉義字元。printf()'\n'。
5、字串常量
「latitude」,字串常量所佔的記憶體位元組數等於字串中位元組數加1,最後用'\0'作為字串的結束標誌,『\0'的ascii碼值為0.c語言沒有專門的字串變數,用乙個字串陣列來存放乙個字串常量。
6、++i 自增以後再參與其他運算
i++ 參與其他運算後,i的值在自增1
如:int i=5,j=5,p,q;
p=(i++)+(i++)+(i++);//p=15
q=(++i)+(++i)+(++i);//q=24
//i=8,j=8
7、c語言資料輸入語句
scanf函式和getchar()
scanf("%d%d",&a,&b);
8、外部變數
a.c檔案中
int a,b;//全域性變數
b.c檔案中
extern int a,b;//外部變數宣告
9、內部函式和外部函式
a、內部函式(靜態函式):如果乙個原始檔中定義的函式只能被檔案中的函式呼叫,而不能被同乙個程式其他檔案中的函式呼叫 static int f(int a)
b、外部函式:整個程式都有效 extern int f(int a,int b)
如果函式中沒有顯示說明static還是extern的話,預設為extern
10、好好利用define定義常量,提高程式的可閱讀性,定義巨集習慣用大寫來表示。
11、條件編譯
#ifdef
#esle
#endif
#ifdef語句不同於if語句,它的規則是靜態的,在預處理也就是編譯前就決定了。
12、c語言指標
a、記憶體單元的編號,該編號也叫做位址(指標),指標變數是儲存記憶體位址的變數,指標變數通常稱為指標。
b、用字串指標指向乙個字串 char * string="hello";
d、指標與陣列: c編譯系統將a[i]轉換為*(a+i)處理的,先計算元素位址,用指標變數直接指向元素,所以用指標運算元組效率更高。p++不用重新計算位址。
13、struct、union、emun
14、位運算
原碼--反碼--補碼
& 與
| 或
^ 異或:相同為0,不同為1,用於交換兩個數的值。
~ 取反:是所以為運算優先順序最高的。
<< 左移:用於快速乘法 2的n次冪
>> 右移:除法 2的冪
C 基礎學習筆記
1.decimal型別不是基本型別,所以在計算時使用會有效能損失。2.c 的char表示乙個8位字元,而c 的char包含16位。原因是不允許在char型別與8位的byte型別之間進行隱式轉換。3.從字串獲取列舉值 timeofday time1 timeofday enum.parse typeo...
C 基礎筆記1
1.轉義字元 2.字元形變數 3.輸出32 127 之間的所有字元 4.寬字元的輸出 include include using namespace std intmain 5.各整型的長度及數值範圍 6.浮點型變數 float 浮點型變數 double 雙精度浮點型變數 例子 include in...
c primer筆記 c 基礎
第1章 開始 一 大多數作業系統支援檔案重定向,這種機制允許我們將標準輸入和標準輸出與命名檔案關聯起來 additemsoutfile 假定 是作業系統提示符,additems 是我們的可執行程式,則上述命令會從乙個名為infile的檔案讀取輸入,並將輸出結果寫入到乙個名為outfile的檔案中,兩...