gpt4 book ai didi

c - 将 char* 数组大小存储在 int 计数器中

转载 作者:行者123 更新时间:2023-11-30 19:11:31 25 4
gpt4 key购买 nike

嗯,我的计数器 int x 中的数据更新有问题。我将很多 char* 字符串传递给我的函数,例如当我传递长度为 8 的第一个 char* 时,int x 将为 8。然后,如果我传递长度为 11 的下一个 char*,x 仍将保留值 8。有关修复它的建议吗?

bool check(const char* word)
{
char checker[LENGTH+1];
int x = sizeof(word);

for(int a=0; a<x; a++) {
checker[a] = word[a];
}

for(int i=0; i < x-1; i++) {
//check if all chars are lower-case
if(checker[i] < 'a' && checker[i] != '\'') {
checker[i] = tolower(checker[i]);
}
}
}

最佳答案

sizeof(word) 为您提供指针的大小。使用 strlen 来获取字符串的长度。

还有一个风格注释,x 对于存储字符串长度的变量来说并不是一个好名字,我会给它命名更多与它实际用途有关的名称。

关于c - 将 char* 数组大小存储在 int 计数器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39944943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com