1.数组的赋值有几种类型:注意{}里的是逗号,
1.全部赋值,int a[5]={1,2,3,4.5.6}; 或者int a[ ]={1.2.3.4.5}(这个给全部元素赋值可以不给出数组的长度);
2. 部分赋值, int a[5]={1.2.3}(这个意思是前面三个元素是1.2.3,后面两个自动赋0),所以给整体赋0的方法就是 int a[10]={0};
特殊的几点:1.给全部元素赋0,有int a[5]={0,0,0,0,0} 或者int a[]={0,0,0,0,0} 或者int a[5]={0};
2.int a[]={1.2.3} 与 int a[5]={1.2.3}不一样,但是与int a[3]={1,2,3};一样
2,字符数组的初始化
1.对字符数组初始化可以有两种方式
1.是一个一个的对数组的变量赋值 char str[30]={'c',' ','p','r','o','g','r','a','m'};
2. 是直接将字符串赋给数组char srt[30]={"c.biancheng.net"};
char str[30]="c.biancheng.net"; 这个最普遍;(这个是定义了数组,然后编译器分配了空间,将字符串 存储在开辟 的空间里)
其中对全体赋值的语句可以不给出数组的长度char str[]=“c.biancheng.net“;
3.二维数组的赋值
1.对部分元素赋值: int a[3][3]={{1},{2},{3}};
这是对每一列的第一行赋初值,未赋初值的自动赋0,所以赋值后数组各元素的值为:
1 0 0
2 0 0
3 0 0
int a [3][3]={{0,1},{0,0,2},{3}};
赋值后的元素值为:
0 1 0
0 0 2
3 0 0
2. 对全部元素赋值:
1.直接赋值 int a[5][3]={ {80,75,92}, {61,65,71}, {59,63,70}, {85,87,90}, {76,77,85} };
或者 int a[5][3]={80, 75, 92, 61, 65, 71, 59, 63, 70, 85, 87, 90, 76, 77, 85};
或者 int a[][3]={1,2,3,4,5,6,7,8,9}; (对全部元素赋值可以不写数组长度)
3. 字符串处理函数
字符串长度函数 strlen,它是string length的缩写,用法:strlen(arrayname),用来获取字符串的长度,strlen将返回一个整数,它是字符串的长度(不包括字符串结束符号'\0');
字符串连接函数strcat,它是string catenate的缩写,用法:strcat(arrayname1,arrayneme2), 用来连接两个字符串,它把第一个字符串后面的‘\0’删除,然后将第二个字符串连接在第一个后面,所以 第一个字符串的长度要大于两个字符串之和。
字符串复制函数strcpy,它是string copy的缩写,用法:strcpy(arrayname1,arrayname2),用来把第二字符串复制到第一个字符串中,
字符串比较函数strcmp,它是string compare的缩写,用法:strcmp(arrayname1,arrayname2); 用来比较两个字符串,字符本身没有大小之分,strcmp() 以各个字符对应的 ASCII 码值进行比较。strcmp() 从两个字符串的第 0 个字符开始比较,如果它们相等,就继续比较下一个字符,直到遇见不同的字符,或者到字符串的末尾。
返回值:若 arrayName1 和 arrayName2 相同,则返回0;若 arrayName1 大于 arrayName2,则返回大于 0 的值;若 arrayName1 小于 arrayName2,则返回小于0 的值。