gpt4 book ai didi

c - 为什么我不能将我在 C 中的输入与常规文本进行比较?

转载 作者:太空宇宙 更新时间:2023-11-04 02:59:01 24 4
gpt4 key购买 nike

我正在尝试将常规文本与我的输入进行比较,如果发生这种特定情况,我想打印一些东西,如果没有,就继续运行。

这是代码:

int main()

{
int c;
c = getchar();

while (c != EOF)

{
putchar(c);

if (c == 'nir')
{
printf ("you typed nir");
}

c = getchar();
}
}

最佳答案

这个问题有点太乱了,我不能一下子回答完,所以让我们从头开始吧。首先,'nir'(如果它完全编译的话)是一种非常奇怪的写单个整数的方式,而我认为你的意思是 "nir",一个字符串文本。但是,(c == "nir") 无法编译,对吗? [这大概就是为什么您尝试将 (c == 'nir') 作为随机镜头,不是吗,尽管它在 C 中没有任何意义。]

在您使用它的上下文中,“nir” 是一个地址。现在,您可能还不知道这意味着什么——将来也不会直到你在 C 方面获得了数周的更多经验。你今天可以使用标准库的 strcmp() 函数,由 string.h 提供。 我会推荐你查一下然后从那里开始。

顺便说一下,不要再次输入 'nir'!这在 C 中没有任何意义。单引号用于单个字符,如 'n',代表字符的整数 ASCII 值。

关于c - 为什么我不能将我在 C 中的输入与常规文本进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14228365/

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