巨兔12138 发表于 2020-3-2 22:56:24

该数组定义为何非法

char d[] = ("FishC", "is", "Good!");
请问大神们这个数组的定义为什么是非法的啊

major_lyu 发表于 2020-3-2 23:48:46

你定义的一维的字符数组,可里面存储的却是三个字符串。要放三个字符串必须定义成字符串数组,也就是二维字符数组。而且初始化应该用大括号吧。
char d[]={"FishC", "is", "Good!"}

小笨笨难得糊涂 发表于 2020-3-3 00:38:31

char d[] = ("FishC", "is", "Good!");
存在两个问题,1.括号用错了,2.字符串本身就算是一个一维数组,你这是字符串的集合,所以要用二维数组来表示。

char d[]是字符数组,可以存一组字符或者一个字符串
例 如:
char a[]={'a','b','c'} ;            //用大括号
char b[]="abc";         

人造人 发表于 2020-3-3 02:08:47

        char *d[] = {"FishC", "is", "Good!"};
页: [1]
查看完整版本: 该数组定义为何非法