
【context】
一维数组
定义
初始化
二维数组
定义
初始化
字符数组
初始化
字符串与其结束的标志
字符数组的输入输出
C语言函数库中一些处理字符串的函数(待更新)
sizeof与strlen
一维数组 定义
类型符 数组名[常量表达式];
Ø 在定义数组并对其中各元素赋值后,就可以引用数组中的元素 Ø 只能引用数组元素而 不能一次整体调用整个数组全部元素的值 初始化//在定义数组的同时,给各数组元素赋值
int a[10]={0,1,2,3,4,5,6,7,8,9};
//部分赋值,系统自动给剩余部分元素赋值为0
int a[10]={0,1,2,3,4};//相当于int a[10]={0,1,2,3,4,0,0,0,0,0};
//未赋值的数据自动设为0
int a[10]={0,0,0,0,0,0,0,0,0,0};//相当于int a[10]={0};
//数据个数已经确定,可以不指定数组长度
int a[5]={1,2,3,4,5};//可写为int a[ ]={1,2,3,4,5};
二维数组
定义
类型符 数组名[常量表达式][常量表达式];
初始化int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
int a[3][4]={{1},{5},{9}};//等价于int a[3][4]={{1,0,0,0},{5,0,0,0},{9,0,0,0}};
int a[3][4]={{1},{5,6}};//相当于int a[3][4]={{1},{5,6},{0}};
字符数组 初始化
char arr1[2]={'a','b'};
char arr2[2]={'a',98};
char arr3[2]="ab";// 三行均等价
char arr[ ]="abcdef";
字符串与其结束的标志
Ø
在
C
语言中,是将字符串作为
字符数组
来处理的
Ø
关心的是字符串的
有效长度
而不是字符数组的长度
Ø
为了测定字符串的实际长度,
C
语言规定了字符串结束标志
’ ’代表’’
Ø
ASCII
码为
0的字符;从ASCII
码表可以查到,
ASCII
码为
0的字符不是一个可以显示的字符,而是一个“空 *** 作符”,即它什么也不做;用它作为字符串结束标志不会产生附加的 *** 作或增加有效字符,只起一个供辨别的标志;'字符数组的输入输出可以有两种方法:'占一个空间。
逐个字符输入输出(
%c)
字符数组的输入输出
Ø
整个字符串一次输入输出(
- %s)输出的字符中不包括结束符’用’
- %s输出字符串时,
后续更新~
sizeof与strlensizeof——计算数组所占空间的大小
strlen——计算字符串的长度(有效长度) \0之前的字符个数
【注意】
- strlen只跟字符串有关,只能针对字符串求长度。是库函数,需要引头文件#include
【举例说明】
①\0是一个字符,'\0'只是引用字符\0
②(易混淆)在abc后的随机处出现\0
③若计算整型数组的长度,如下:总大小/元素大小——sizeof的单位是字节(算的是字节数)
供后续学习的参考,加深印象。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)