C語言中的陣列與字串

2021-09-07 14:28:55 字數 1607 閱讀 5523

對於陣列,需要注意兩點:1, c語言中只有一維陣列, 而且陣列的大小必須在編譯期就作為乙個常數確定下來; 2. 對於乙個陣列,我們只能做兩件事:確定陣列的大小 和 獲得指向該陣列下標為0的元素的指標;

實際上,對於陣列下標的運算,實際上都是通過指標進行的;

如: int a[10]            ,陣列名 a 實際上為指向陣列第0個元素的指標; 所以, a[i] 可以表示為  *(a+i), 即對指標求值;

int b[10][31]            表示了b 是乙個援用10個元素的陣列, 而每乙個元素又是擁有31個整型元素的陣列;      所以,b 表示b[0] 的位址,而 b[0]表示了 b[0][0]的位址;  b+i 表示了 b[i]的位址(即指向b 的第i個元素的指標),

對於 b[i][j],它等階於      *(*(b+i)+j)

字元陣列是用用於存放字串的:

//

字元陣列的定義:它與陣列定義一樣,只是型別改為了char;

char a[10]//

在定義的時候初始化:

char a[10] =

或 char a[10] = "

abc" 此時,c編譯系統會在字串結尾自動加上'

\0';

用指標來定義乙個字串:

char* a = "

abc" 系統也會自己在字串後面加上』\0

';

注意,特別重要:

用指標定義字串時, 初始化指標時所建立的字串常量被定義為唯讀。如果試圖通過指標修改這個字串或其中乙個單個字元的話,則會報錯的;

有字元陣列定義的字串時,由字串常量初始化的陣列是可以修改的.

使用malloc()或calloc()申請的記憶體是可以修改的;

下面的幾個字串的處理函式包含在標頭檔案 string.h 中;

字串的輸入函式:gets()

字串的輸出函式:puts( )

字串的連線函式: strcat( )

字串複製函式: strcpy( )

字串比較函式:strcmp ( )

測試字串的長的函式: strlen( )

c語言中的字元陣列與字串

一 字元陣列的定義 一維字元陣列 用於儲存和處理1個字串,其定義格式與一維數值陣列一樣。char str 20 二維字元陣列 用於同時儲存和處理多個字串,其定義格式與二維數值陣列一樣。char country 10 20 country 第i個字串 二 字元陣列的初始化 字元陣列的初始化.1.可以通...

c語言中的字串與字元陣列

1 字元陣列的定義與初始化 字元陣列的初始化,最容易理解的方式就是逐個字元賦給陣列中各元素。char str 10 即把10個字元分別賦給str 0 到str 9 10個元素 如果花括號中提供的字元個數大於陣列長度,則按語法錯誤處理 若小於陣列長度,則只將這些字元陣列中前面那些元素,其餘的元素自動定...

c語言中的字元陣列與字串

字元陣列的初始化,最容易理解的方式就是逐個字元賦給陣列中各元素。char str 10 即把10個字元分別賦給str 0 到str 9 10個元素 如果花括號中提供的字元個數大於陣列長度,則按語法錯誤處理 若小於陣列長度,則只將這些字元陣列中前面那些元素,其餘的元素自動定為空字元 即 0 2 字元陣...