我是一个初学者,不是以英语为母语的人,所以请原谅我的无知。我的作业是用 C 创建一个函数来比较 char 字符串的元素。该函数稍后在 main() 中调用,它应该在其中处理具体字符串。但这些字符串的每个条目的大小可能不同,因此在函数中定义大小是没有意义的。我需要知道每个字符串的大小,否则我的程序将不知道何时停止。我该如何实现这一目标?我最初的想法是使用函数 sizeof()。这会起作用还是解决方案更复杂?感谢您的所有回答!
最佳答案
sizeof 运算符用于评估数据类型或变量的大小,以 char 大小存储单元的数量来衡量。 它对于评估字符串的长度没有用处。
为此,您可以使用 C 库 (string.h) 的 strlen() 函数。 strlen() 返回字符串的长度,不包括 null。
您还可以编写自己的函数来计算字符串长度,如下所示
int stringlen(char str[])
{
int len=0;
while(str[i] != '\0')
{
len++;
}
return len;
}
关于c - 如何在 C 函数中使用未定义的字符串大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47596309/