C语言,如何求二维数组中一个单词的长度?

标签 c string multidimensional-array string-length

我正在尝试为 for 循环创建一个条件,我不得不说 (c<wordlength)但我不确定如何找到单词的长度。

假设我有一个叫做...

char shopping[10][10]={"BAGELS","HAM","EGGS"};

找到 shopping[0] 有 6 个字母的正确语法是什么?

最佳答案

正确的语法是

strlen(shopping[0])

这将返回一个 size_t 类型的值,不包括 NUL 终止符。

参见 man strlen了解详情。

如果您使用 strlen(unchanging_string) 作为循环的终止条件,谨慎的做法是在循环之前调用它一次,而不是在每次迭代时调用它。

另一种遍历 shopping[0] 字符的方法如下:

char *s = shopping[0];
while (*s) {
  /* (*s) is the current character */
}

关于C语言,如何求二维数组中一个单词的长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15817762/

相关文章:

arrays - MATLAB:如何调用 m 维数组的 "cross-section"?

c - 将值存储到C中的双向链表中

Python 3 查找字符串中的最后一个数字

Javascript用中间值填充数组

java - 为什么这两个表达式产生相同的值?

.net - 为什么 System.String 对象不缓存其哈希码?

PHP - 将两个数组合并为一个数组(也删除重复项)

c - 用C中的任何空格分隔字符串

c - 在 OS X 上,你如何找出当前的内存保护级别?

c - 应该吗?运算符被更频繁地使用?