在C中的空字符串上终止程序

时间:2017-09-20 02:57:24

标签: c user-input

所以,我对C很新,我试图在一个空字符串上终止我的程序(当用户按下enter时没有任何东西)但是由于某种原因它给了我一个无限循环。

这是我的代码:

while(input[0] != '\0') {
    if(slot < 27 && slot >= 0) {
        struct LinkedList curr = files[slot];
        if(strcmpci(input, curr.val) == 0) {
            printf("%s, \n", curr.val);
        }

        while(curr.next != NULL) {
            curr = (*(curr.next));
            if(strcmpci(input, curr.val) == 0) {
                printf("%s\n", curr.val);
            }
        }
    }
}

我到过的每个地方都告诉我用这种格式结束我的循环

while(____ != '\0') {
}

所以我很困惑。

1 个答案:

答案 0 :(得分:1)

当用户按Enter键时,他们没有输入NULL字符,他们正在输入换行符。尝试检查\n

相关问题