DEVC++初始化了一个200的数组,为什么有非0项
c语言吧
全部回复
仅看楼主
level 2
2024年04月21日 03点04分 1
level 2
倒序输出的
2024年04月21日 03点04分 2
level 9
代码呢[怒]
2024年04月21日 04点04分 3
level 9
2024年04月21日 04点04分 4
@究极小白 可以的,数组在定义时如果只初始化部分元素,那么剩余未初始化的元素会被初始化为0(这个0不一定是数字0,对于字符数组来说是\0,对于整型数组就是10进制的0,对于指针数组就是NULL)
2024年04月21日 07点04分
@究极小白 https://en.cppreference.com/w/c/language/array_initialization
2024年04月21日 08点04分
谢谢你,不知道怎么回事刚才又好了
2024年04月21日 05点04分
代码可以看楼下,刚才确实输出是这个样子的
2024年04月21日 05点04分
level 2
2024年04月21日 05点04分 5
@究极小白 虽然但是,这个{}我记得是initializer吧,讲道理应该默认初始化为0才对(?)
2024年04月22日 04点04分
最好用memset初始化
2024年04月21日 07点04分
推荐用更快更简洁的memset代替循环赋值
2024年04月21日 10点04分
@快速人 估计是编译器太老了
2024年04月22日 08点04分
level 1
全局初始化就行了[呵呵]
2024年04月21日 13点04分 6
level 1
定义数组不会赋值,用的是以前用过的地址,如果以前地址有数据的话,就会显示之前的数据,也就是脏数据。 初始化的时候赋值为0就行了
2024年04月21日 17点04分 7
1