RT,以下四份代码(已省略文件头和命名空间)的输入和在洛谷ide上/在本地的输出如下:
char ss[]={'a','b','c'};
int main(){
char s[10];
scanf("%s",s);
cout<<strcmp(ss,s);
return 0;
}
const char ss[]={'a','b','c'};
int main(){
char s[10];
scanf("%s",s);
cout<<strcmp(ss,s);
return 0;
}
int main(){
const char ss[]={'a','b','c'};
char s[10];
scanf("%s",s);
cout<<strcmp(ss,s);
return 0;
}
int main(){
char ss[]={'a','b','c'};
char s[10];
scanf("%s",s);
cout<<strcmp(ss,s);
return 0;
}
它们的区别只在于字符数组 ss 是否在主函数内定义以及是否定义为 const ,为何运行出来的结果会产生不同?求好心的巨佬解答,谢谢!