定义数组,及注意事项
原创li744831579 ©著作权
©著作权归作者所有:来自51CTO博客作者li744831579的原创作品,请联系作者获取转载授权,否则将追究法律责任
关于数组:
1, 定义:数组的维数必须用值大于等于1的常量表达式定义。
2, 此常量表达式只能包含整型字面值常量、枚举常量、或者用常量表达式初始化的整型const对象。
例如:
const unsigned bufsize=512;
int staffsize=27;
char ni[12];
char ina[bufsize]; //ok
char i[staffsize];//error ,
如果没有显式提供元素初值,则数组元素会像普通变量一样初始化
1. 在函数体外定义的内置数组,其元素均初始化为零。//string类 初始化为””
2. 在函数体内定义的内置数组,其元素无初始化,//string初始化为空,自己做的实验检查的
3. 不管数组在那里定义,如果其元素为类类型,则自动调用该类的默认构造函数进行初始化;
4. 如果该类没有默认构造函数,则必须为改数组的元素提供显式初始化。
字符数组:
字符数组初始化时,可以使用字符串字面值进行初始化,但是,会包含一个额外的空字符null
例如
char ca1[]={‘a’,’b’,’c’}//no null
char ca2[]={‘a’,’b’,’c’,’\0’};//explicit null
char ca3[]=”abc”;//null terminator added automatically,
所以定义时,必须加上空字符串
例如
const char ca3[6]=”Daniel”;//error:Daniel is 7elements
上一篇:explicit 构造函数
下一篇:给指针赋值或通过指针进行赋值
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Dll接口定义注意事项
Dll 对外接口不允许使用STL
数据 进程地址空间 -
elasticsearch 数组的注意事项
我都知道lucene是不区分数组类型的,而elasticsearch
elasticsearch 字段 嵌套 扁平化 -
SpringBoot中yml配置文件:定义list集合、数组及注意事项
每日英文The fact is that the world is out of ...
python java 编程语言 推荐系统 usb