我正试图找到一种方法,将给定的单词与字符串数组进行比较,最终将“最大”单词(根据ASCII表)插入新的数组。
我的问题是;我可以将数组内部的字符串称为常规位置吗? 例如
char arr[]={"hello", "world"};
我可以将“ hello”称为arr[0]
,将“ world”称为arr[1]
吗?
答案 0 :(得分:1)
您不能那样做。确实,当您尝试编译代码时,会收到错误之王
test.c:2:22: error: excess elements in char array initializer
2 | char arr[]={"hello", "world"};
| ^~~~~~~
test.c:2:22: note: (near initialization for ‘arr’)
这意味着您已声明一个由1个块组成的数组,您尝试使用超过1个块(在这种情况下为2个)来初始化它。
您需要通过以下方式更改声明:
char *arr[] = {"hello", "world");
,一切都应该没问题!