比较给定单词和数组中的字符串

时间:2019-12-24 15:10:59

标签: c arrays c-strings

我正试图找到一种方法,将给定的单词与字符串数组进行比较,最终将“最大”单词(根据ASCII表)插入新的数组。

我的问题是;我可以将数组内部的字符串称为常规位置吗? 例如

char arr[]={"hello", "world"};

我可以将“ hello”称为arr[0],将“ world”称为arr[1]吗?

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");

,一切都应该没问题!