c - 让 fgets 将字符保存到 C 中的变量中

标签 c if-statement while-loop conditional-statements fgets

我有这个小程序:

char buffer[10] = "0"
while (buffer == "0"){
 fgets(buffer, sizeof(buffer), stdin);

if(buffer == "1\n") do this
if(buffer == "2\n") do that
}

但是,当我按 1 或 2(或其他任何与此相关的内容)时,什么也没有发生。 我错过了什么?

最佳答案

更改为

char buffer[10] = "0"
while (fgets(buffer, sizeof(buffer), stdin){
    if(strcmp(buffer, "1\n")==0)
        ;//do this
    if(strcmp(buffer, "2\n")==0)
        ;//do that
}

关于c - 让 fgets 将字符保存到 C 中的变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27056264/

相关文章:

c - while 循环中的递增和递减

android - 适配器错误中的 TextView.setText()

regex - Bash 需要测试字母数字字符串

php - 如何使用 mysql 查询在 php 中使用嵌套的 foreach 循环

sql - 具有多个变量的 T-SQL SELECT

java - While 循环导致 print 语句打印两次

C:试图显示包含引号的文件中的内容,但编译器将它们打印成奇怪的符号

c - C中使用for循环的自然对数

c - 如何使用waf构建共享库?

c - 结构体成员不会存储在变量中