#牛客在线求职答疑中心#c语言中为什么赋值语句char ch[ ][5]={"ABCDE"};不能正确赋值?数组或指针赋值时需要注意什么?
全部评论
在C语言中,char ch[ ][5]={"ABCDE"}; 这样的赋值方式是错误的,因为"ABCDE"是一个字符串,它实际上包含了6个字符,包括末尾的'\0'字符。而ch是一个二维字符数组,它的每个元素是一个字符数组,每个字符数组的大小是5。因此,"ABCDE"的长度超过了ch[0]数组的长度,所以不能正确赋值。
在数组或指针赋值时,需要注意以下几点:
1. 确保赋值的目标和源的长度一致,或者源的长度小于或等于目标的长度。
2. 确保赋值的类型匹配,例如,不能将整数赋值给字符变量。
3. 在使用指针赋值时,需要确保指针指向的内存区域是有效的,并且分配了足够的内存。
4. 在使用多维数组赋值时,需要确保每个维度的长度都是正确的。
相关推荐
点赞 评论 收藏
分享
05-10 16:48
门头沟学院 Java 程序员小白条:主要原因,投递太晚了,快手应该早点溜了,你都从去年9月开始的,半年也差不多3月跑路了,这样的话,至少有5个以上的面试机会
点赞 评论 收藏
分享
04-16 00:38
四川大学 Java 点赞 评论 收藏
分享
TCL公司福利 1293人发布