2016-10-25 13:54发布
int main() { char s1[50], s2[50] = "hello"; s1 = s2; printf("%s", s1); }
s1=s2那句报错了, 问题到底出在哪? 求解
最后那个括号没对齐,对齐就好了
程序在编译好之后,s1,s2的内部就分配好了,可以看成指向分配内存的首地址。如果s1=s2不报错,就相当于s1和s2都指向s2指向的内存,同时s1指向的内存就无法访问了。
字符数组S1 S2的本身是地址,它是常量。把S1=S2就是把一个常量赋值给另一个常量当然是错误的。字符串的赋值可以用String里相应的函数
最多设置5个标签!
付费偷看金额在0.1-10元之间
最后那个括号没对齐,对齐就好了
程序在编译好之后,s1,s2的内部就分配好了,可以看成指向分配内存的首地址。如果s1=s2不报错,就相当于s1和s2都指向s2指向的内存,同时s1指向的内存就无法访问了。
字符数组S1 S2的本身是地址,它是常量。把S1=S2就是把一个常量赋值给另一个常量当然是错误的。
字符串的赋值可以用String里相应的函数
一周热门 更多>