1.二維數組:是一個特殊的一維數組數組
徹底初始化:函數
1)int a[2][3]={{1,2,3},{2,3,4}};spa
2)連續賦值int a[2][3]={1,2,3,2,3,4};字符串
3)能夠省略第一維的長度,第二維不能省get
int a[][3]={1,2,3,2,3,4};字符串處理
部分初始化string
int a[2][3]={1,2,3};io
先定義後初始化循環
2.二維數組的遍歷遍歷
兩重循環
3.二維數組的存儲,先行後列,連續存儲
二維數組的首地址=數組名=&a[0]=&a[0][0]
經過數組名計算數組佔用的總字節數sizeof(a);
每行的字節數sizeof(a[0]);
每行有多少列:上面的數/每一個元素佔用的字節數
行數:sizeof(a)/sizeof(a[0])
4.字符串(雙引號引發來,以\0結束)
用字符數組來保存字符串
1)char str[4]={"Hello"};
2)char str[4]="Hello";
3)char str[]="Hello";
字符串輸出
print("%s",str);//str是字符串的首地址
print("%s",&str[0]);//%s從給定的地址開始打印,直到\0結束
%s輸入的話,若是字符串有空格,則空格以後的字符沒法被接收保存
計算字符串的長度:
1)使用strlen(str);函數
2)遍歷數組,遇到\0結束循環,返回個數
字符串處理函數
1)輸入輸出函數,包含stdio.h
puts輸出一個字符串,puts(字符數組首地址);
gets輸入一個字符串,gets(字符數組名)使用gets會給出一個警告,存在越界問題。能夠接收空格,但不能夠格式話輸出。
2)字符串鏈接函數,包含string.h
strcat(oldstr,newstr);//把newstr鏈接到oldstr後面,oldstr要足夠大
strcpy(oldstr,newstr);//用newstr覆蓋oldstr,oldstr要足夠大
strcmp(str1, str2);//比較str1和str的大小,str1>str2返回大於0
strlen(str1);//計算字符串的長度