今天在复习C语言指针多字符串的时候遇到的一个小问题,我使用的是g++编译器,所以在运行代码的时候报错了。
代码:
#include <stdio.h>
#include <string.h>
#define M 200
int main(int argc, char const *argv[])
{
char str[M] = "asdasd";
static char *name[10] = {"asd"};
static const char *name[10] = {"asd"};
printf("%s\n", str);
return 0;
}
没有const的话就会报错。查了相关资料之后,发现这是c/c++不同的地方,在C ++中,字符串文字类型是const char [],这与C不同,C字符串文字是char []。
本文通过一个具体的案例探讨了C语言与C++中字符串处理的不同之处。特别关注了字符串文字在两种语言中的类型差异,即C++默认为const char[]而C语言为char[]。
4849

被折叠的 条评论
为什么被折叠?



