1.二維陣列定義的一般形式為:
型別說明符 陣列名[常量表示式][常量表示式];
如:定義a為3×4(3行4列)的陣列,b為5×10(5行10列)的陣列
float a[3][4],b[5][10];
2.字串和字串結束標誌:
為了測定字串的實際長度,c語言規定了乙個「字串結束標誌」——『\0』。
3.字元陣列的輸入輸出可以有兩種方法:
逐個字元輸入輸出。用格式符「%c」輸入或輸出乙個字元。
將整個字串一次輸入或輸出。用「%s」格式符,意思是對字串的輸入輸出。
(1)用「%s」格式符輸出字串時,printf函式中的輸出項是字元陣列名,而不是陣列元素名。
(2)如果陣列長度大於字串實際長度,也只輸出到遇′\0′結束。
(3)輸出字元不包括結束符′\0′。
(4)如果乙個字元陣列中包含乙個以上′\0′,則遇第乙個′\0′時輸出就結束。
(5)可以用scanf函式輸入乙個字串。
4.字串處理函式
(1)puts函式
其一般形式為: puts (字元陣列)
其作用是將乙個字串(以′\0′結束的字串行)輸出到終端。
用puts函式輸出的字串中可以包含轉義字元。
例如:char str=;
puts(str);
輸出結果:
china
beijing
(2)gets函式
其一般形式為:gets(字元陣列)
其作用是從終端輸入乙個字串到字元陣列,並且得到乙個函式值。
(3)strcat函式
其一般形式為:strcat(字元陣列1,字元陣列2)
strcat的作用是連線兩個字元陣列中的字串,把字串2接到字串1的後面,結果放在字元陣列1中。
(4)strcpy函式
其一般形式為:strcpy(字元陣列1,字串2) strcpy是「字串複製函式」。
作用:是將字串2複製到字元陣列1中去。
(1)字元陣列1必須定義得足夠大,以便容納被複製的字串。字元陣列1的長度不應小於字串2的長度。
(2)「字元陣列1」必須寫成陣列名形式,「字串2」可以是字元陣列名,也可以是乙個字串常量。
(3)複製時連同字串後面的′\0′一起複製到字元陣列1中。
(4)可以用strncpy函式將字串2中前面若干個字元複製到字元陣列1中去。
(5)不能用賦值語句將乙個字串常量或字元陣列直接給乙個字元陣列。
(5)strcmp函式
其一般形式為:strcmp(字串1,字串2)
strcmp的作用是比較字串1和字串2。
比較的結果由函式值帶回
(1) 如果字串1=字串2,函式值為0。
(2) 如果字串1>字串2,函式值為一正整數。
(3) 如果字串1《字串2,函式值為一負整數。
(6)strlen函式
其一般形式為: strlen (字元陣列)
strlen是測試字串長度的函式。函式的值為字串中的實際長度(不包括′\0′在內)。
5.形參與實參
形式引數:定義函式時函式名後面括號中的變數名
實際引數:呼叫函式時函式名後面括號中的表示式
6.引數傳遞
值傳遞方式方式:
函式呼叫時,為形參分配單元,並將實參的值複製到形參中;呼叫結束,形參單元被釋放,實參單元仍保留並維持原值;
特點:形參與實參占用不同的記憶體單元; 單向傳遞
位址傳遞方式:
函式呼叫時,將資料的儲存位址作為引數傳遞給形參
特點:形參與實參占用同樣的儲存單元;「雙向」傳遞;實參和形參必須是位址常量或變數;
7.用static宣告區域性變數:函式中的區域性變數的值在函式呼叫結束後不消失而保留原值,以便下一次呼叫該函式時可以使用上一次呼叫的最後結果。這時就應該指定該區域性變數為「靜態區域性變數」。
用extern宣告外部變數:外部變數(即全域性變數)是在函式的外部定義的,它的作用域為從變數的定義處開始,到本程式檔案的末尾。在此作用域內,全域性變數可以為程式中各個函式所引用。
用static宣告外部變數:外部變數只限於被本檔案引用,而不能被其它檔案引用,可以在定義外部變數時加乙個static宣告。
c之指標與陣列(1)
1.指標與位址 一元運算子 是間接定址或者間接引用運算子。例如 int x 1,y int ip ip x y ip 2.指標與函式引數 c語言是以傳值的方式將引數值傳遞給被呼叫函式,因此被呼叫函式不能直接修改主調函式中變數的值。例如 void swap int x,int y swap不能交換兩個...
指標與陣列,指標陣列 陣列指標
int a 10 print n a p,a p a,a print n a 1 p,a 1 p a 1,a 1 a做乙個指標,步長為4,指向乙個元素,a做乙個指標,步長為40,指向乙個維陣列 int b 3 4 print n b p,b p,b p b,b,b print n b 1 p,b 1...
陣列 指標(1)
a a 0 a a 0 前提是 int a 10 1.a就是陣列名。a做右值表示陣列首元素 陣列的第0個元素,也就是a 0 的首位址 首位址就是起始位址,就是4個位元組中最開始第乙個位元組的位址 a做右值等同於 a 0 2 a 0 表示陣列的首元素,也就是陣列的第0個元素。做左值時表示陣列第0個元素...