C语言中的数组为什么不可赋值给另一个数组?数组的初始化,除了遍历赋值,还可以怎么被赋值?

2023-11-14

C语言中的数组为什么不可赋值给另一个数组?

因为数组为指针常量,如 int a[]; int b[]; b = a; 是错误地,因为 int a[] 是 int * const a, int b[] 是 int * const b,一个指针常量不可以被另一个指针常量修改(地址常量不可以被修改)。

数组的初始化,除了遍历赋值,还可以怎么被赋值?

数组在全局变量时,int可以被编译器赋值为0;作为局部变量时,需要进行赋值进行初始化,否则会出现奇怪的数字。

局部变量 int a[10] = {0};  int a[10] = {1}; int a[10] = {[2]=3,4,[5]=8} 是缺省的赋值,其他值为0。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言中的数组为什么不可赋值给另一个数组?数组的初始化,除了遍历赋值,还可以怎么被赋值? 的相关文章

随机推荐