C 语言中字符数组的一个问题 财富值93

2016-10-29 14:46发布

int main() {   char s1[50], s2[50] = "hello";   s1 = s2;   printf("%s", s1); }

s1 = s2 那句报错了,问题到底出在哪?求解。

13条回答

程序在编译好之后,s1,s2的内部就分配好了,可以看成指向分配内存的首地址。如果s1=s2不报错,就相当于s1和s2都指向s2指向的内存,同时s1指向的内存就无法访问了。

一周热门 更多>