当前位置:首页 » 编程语言 » c语言数组不初始化
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言数组不初始化

发布时间: 2022-08-02 03:59:44

c语言中二维数组可不可以不初始化

二维数组至少要给定第一维的初值
a[][]不行,至少要a[1][]

⑵ C语言数组不能初始化

从各个表达式中可以看出:C是不能正确初始化的,C用来初始化三行两列的数组,而不是两行三列的
BD中第一维省略的写法是可以的,B中没有初始化到的全部赋值为0,D中依次行从上到下,列从左到右赋值

⑶ c语言 定义一个整型数组,并未初始化数据.

首先要清楚什么是初始化:
在声明变量的同时赋值就是初始化。
而在其后的赋值语句就不是初始化。
一般来说,如果你不给变量一个确定的值,就直接引用它,则系统不能保证运行的唯一性,而这是我们程序所不允许的。所以我们一般用初始化的方法来确定其值。
如char str[100]
引用memset(str,sizeof(str),0);
即将所有的数组元素初始化为0;
但并不总是这样。如下:
int i;
for (i=0;i<10;i++)...
i就不是通过初始化,而是用赋值的方法确定值的。

扩展到数组中,也是如此,如果你在引用数组元素前不把它的值确定下来,程序运行就可能不确定。
因为确定数组元素值的方法有两个:初始化和赋值,所以初不初始化要视情况而定。

⑷ c语言数组未初始化问题

puts();函数输出字符时,如果遇到'\0',就终止输出,没有遇到就一直输出字符直到遇到'\0'。
strcat()在拼接字符串后,会自动添加一个'\0'。
所以上面的没有错,下面的错了。
你没有对字符数组赋值,而且程序也不会自动帮你添加‘\0’。所以打印的时候,是整个数组全部打印出来的!至于为何是烫烫烫,与默认的机器码有关。

⑸ c语言,可不可以不初始化数组

如果你把数组定义为全局数据(定义在主函数之外),那么编译器会帮你把数组初始化位0,但是如果不是全局数据,那么数组数组元素的值就是不确定的了。(其实是多少与你用的编译器有关,比如vc6.0会把它初始化位十六进制数cc)

但是如果你这样定义数组
int a[10]={1,2};
那么有些编译器会把后面的项初始化为0,但也不能保证所有的编译器都会这样做,所以不建议这样做,尽量对数组进行初始化。

⑹ c语言数组必须初始化吗

你好,c语言数组不是必须要初始化

⑺ c语言数组不初始化

C语言中,如果不对变量作初始化时,全局变量可以自动初始化为0值。
局部变量的话,变量如果不作初始化时,其中的值是不确定的。

⑻ c语言数组初始化和不初始化运行结果一样吗

有可能不一样,不初始化有可能出现随机内存
所以要么直接初始化,要么做memset(buf,0,1024)或ZeroMemory等后续初始化