【发布时间】:2023-03-22 19:20:02
【问题描述】:
为什么会这样:
char animals[][30] = {{"cow "}, {"dog "}, {"frog "}, {"gecko "}, {"cat"}};
当我这样做时返回 4 而不是 5:
printf("%d\n", strlen(animals));
据我所知,字符数组有 5 个不同的数组,所以我不确定为什么说有 4 个。
【问题讨论】:
-
animals不是字符串 -
您应该收到关于
animals和strlen()的参数之间类型不匹配的警告 -
strlen是“字符串长度”的缩写。为什么你会期望它返回数组中的元素数量?
标签: c multidimensional-array c-strings strlen