gpt4 book ai didi

C 循环未正确迭代字符串

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

我使用以下方法来迭代字符串:

char is_words(char *word)
{
if (word != NULL) {
for (int i = 0; i<strlen(word)-1; i++) {
char c = word[i];
printf("c is: %c\n", c);
if (!isalpha(c) || !isspace(c)) {
return c;
}
}
}
return 'a';
}

但是当使用它时,它只打印出“c is X”,其中X是字符串的第一个字母。为什么它不迭代整个字符串?

最佳答案

该行返回 C

 if (!isalpha(c) || !isspace(c)) {
return c;
}

函数返回值后完成执行

<小时/>

了解如何使用 && 和 ||

一些解释

如果c是abc符号 - isalpha(c) = true , isspace(c) = false

true || false = true

如果c是空格符号

isalpha(c) = false , isspace(c) = true

false || true = true

如果c是数字,你会得到错误并打印1个以上的符号

关于C 循环未正确迭代字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43930140/

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