1、一維陣列
陣列:一組相同型別的資料的集合
在記憶體中,是一片連續的空間
陣列名就是陣列的首位址
//注意:陣列可以初始化,但絕對不可以整體賦值求陣列的大小,sizeof(陣列名);錯誤示範:
arr = {};//對陣列名賦值是錯誤的
arr[5] = {};//對陣列某乙個下標賦值只可以賦乙個
2、資料型別 陣列名[陣列的大小]; //定乙個陣列,大小固定
int arr[10];//定義乙個整型陣列,裡面可以存放10個整型數
char name[10];//定義乙個字元陣列,裡面可以存放10個字元
訪問陣列成員:使用陣列下標來進行訪問
int arr[n];
下標範圍是0~n-1 //arr[n+2]屬於陣列越界
陣列越界是肯定錯誤的做法,但是不一定會出錯,不要這麼做3、資料型別 陣列名[陣列的大小]={}; //初始化-----如果對該片空間我們恰好有許可權操作,那麼不會報錯
-----如果沒有許可權操作,絕對會報錯,段錯誤(訪問到沒有許可權訪問的資源)
char name[10]=「zhangsan」;
.1陣列的完全初始化
int arr[5] = ; //arr[0]~arr[4]
.2陣列的部分初始化
int arr[100] = ;//除了初始化的幾位資料,剩下的所有成員全部為0
int arr[100] = ;
int arr[100] = {};
.3指定元素初始化
int arr[100] = ;
如果不想初始化,陣列的賦值還可以通過迴圈乙個乙個賦值
使用迴圈將陣列乙個乙個列印出來
4、二維陣列
定義二維陣列:
int arr[3][4];//乙個三行四列的二維陣列
二維陣列初始化:可以理解為是多個一維陣列的集合
.1完全初始化:
int arr[3][4] = ,,};
2部分初始化
int arr[3][4] = };
.3指定元素初始化
int arr[3][4] = ,[2]=};
//二維陣列使用雙層迴圈進行列印
int arr[3][4]
for(i=0;i<3;i++)
printf("\n");
}
5、擴充套件:
int arr1 = ;
int arr2[3] = };
arr2[2]
//一維陣列如果不寫陣列大小,必須初始化,並且初始化幾個值,陣列就多大
//二維陣列列數可以省略,行數絕對不可以省略
變長陣列://雖然沒有錯,但是盡量少用
int n;
scanf("%d",&n);
int arr[n];
6、字元陣列(一維) //就是字串
char arr[10];
//每個字串最後會預設有乙個尾0,'\0'
char arr[5] = ;//一般不建議這麼定義字元陣列
char name[5]="lisi";
char name[5]=;
sizeof(name);
.1 strlen(引數一);//求位元組長度,不包括'\0'
char arr="hello";
sizeof(arr);//6,包含'\0'
strlen(arr);//5
//將字串作為引數傳遞,會將字串的長度返回給我們
.2 strcpy(引數一,引數二);//拷貝字串
//將引數二中的內容拷貝到引數一中
char arr[10]="hello";
char ret[10];
strcpy(ret,arr);
.3 strcmp(引數一,引數二);//比較兩個字串是否相等
strcmp(arr1,arr2);//如果arr1與arr2內容相同,返回0,如果arr1大於arr2,返回正數,如果arr17、陣列清零函式
int arr[10];
bzero(要清零的陣列,陣列的位元組長度);//僅僅只能做清零操作
bzero(arr,40);
memset(陣列,要改變的數,陣列的位元組長度);//可以清空成自己指定的資料
memset(arr,1,40);
--------------------------------------end---------------------------------------------
C語言指標與陣列詳解
指標與陣列是 c 語言中很重要的兩個概念,它們之間有著密切的關係,利用這種 關係,可以增強處理陣列的靈活性,加快執行速度,本文著重討論指標與陣列之 間的聯絡及在程式設計中的應用。1 指標與陣列的關係 當乙個指標變數被初始化成陣列名時,就說該指標變數指向了陣列。如 char str 20 ptr pt...
詳解C語言初階之陣列
目錄 所謂陣列 array 就是具有相同資料型別的集合,存放的資料型別即陣列本身的型別。可以發現儲存的都是int型 補充 除錯小技巧 除錯視窗 按f5進行除錯,開啟選單欄中的除錯 視窗 監視 隨便開啟乙個監視視窗,輸入arr,將程式執行過arr的初始化即可觀察到arr內部進行的初始化 a 完全初始化...
C語言變長陣列使用詳解
看如下 include typedef struct softarray int main 執行結果 root vm 0 7 www.cppcns.comcentos mydoc a.out the struct s size is 4 我們可以看出,softarrwww.cppcns.comay結...