阿鑫来了  

C语言中的字符串是一种特殊的字符数组

特殊在必须是以'\0'作为结束标记

如果某个字符数组中没有\0,那么这个字符数组就不能称为"字符串",

除C语言之外都没有其他语言采取这种设计.

例如:

char str[]="hehe";

其中   字符串长度为4(不计算\0)

           数组的元素个数为5(计算\0)

 数组作为函数参数时,会隐式转为指针类型.

 

C语言数组(C++,java,go)

数组是批量创建一组相同类型的变量 

int arr[3]={1,2,3}    初始化

int arr[3]                未初始化

 未初始化内部的值再VS里是VS自动填充的无意义的数据

在linux里是栈空间上的残留值

 

重点知识

在C/C++中,针对数组下标操作,千万不能越界

一旦越界,会产生"未定义行为"

"未定义行为"运行结果不可预期

可能程序读出一个"正确"的值;也可能是一个错误的值;

也可能直接崩溃或死机

有"未定义行为"一定是个bug

 

posted on 2021-03-20 22:46  阿鑫来了  阅读(190)  评论(0)    收藏  举报