c语言中为什么不能char*s={"china"}这样赋值?详细说明一下

如题所述

第1个回答  2012-09-21
{}这个是数组的赋值方式,“ ” 这个是字符串的赋值方式,当然字符串还有其他方法。如果你想用char *s ;这种形式,只能用指针数组,如:char *s[ ] ={"china","china"}; 本回答被提问者和网友采纳
第2个回答  2012-09-21
可以使用如下三种方式

int main()
{
char *s[] = {"abc","dd","ddddd"};//指针数组
char str[] = {'a','b','c','\0'};//字符数组
char str2[4] = {'a','b','c'};//字符数组
//貌似只有和数组扯上关系才能使用{}进行初始化。。。。

printf("%s\n%s\n%s\n",s[0],str,str2);
}
相似回答