无限while循环和控制-c

用户名

因此,我编写了以下代码:

void main(void) {

int charNums[ALPHABET], i = 1;
char word[MAX];

while(i) {

    initialize(charNums, word);

    getString(word);
    setLetters(charNums, word);

    getString(word);
    checkLetters(charNums, word);

    if(isZero(charNums))
        printf("Anagram\n");
    else
        printf("Not anagram\n");
}
}

while循环应该是无限的。我的教授说了一些有关使用CTRL-C退出无限while循环的事情,但这与我编写的代码不兼容。我缺少简单的东西吗?有人能指出我正确的方向吗?谢谢!(注意:这只是代码的一部分。)

里齐尔123

这应该为您工作:

(我在这里添加了一个信号处理程序,该处理程序检查您是否按了ctrl + c,如果是,则停止循环)

#include <unistd.h>
#include <stdio.h>
#include <signal.h>

volatile sig_atomic_t stop;

void inthand(int signum) {
    stop = 1;
}

int main(int argc, char **argv) {

    signal(SIGINT, inthand);

    while (!stop)
        printf("loop\n");

    printf("exiting safely\n");
    system("pause");

    return 0;
}

因此,我认为您的程序应如下所示:

#include <unistd.h>
#include <stdio.h>
#include <signal.h>

volatile sig_atomic_t stop;

void inthand(int signum) {
    stop = 1;
}

int main(int argc, char **argv) {

    signal(SIGINT, inthand);

    int charNums[ALPHABET], i = 1;
    char word[MAX];

    while(!stop) {

        initialize(charNums, word);

        getString(word);
        setLetters(charNums, word);

        getString(word);
        checkLetters(charNums, word);

        if(isZero(charNums))
            printf("Anagram\n");
        else
            printf("Not anagram\n");
    }

    printf("exiting safely\n");
    system("pause");
    return 0;

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无限循环 C++ 与 while 和向量对

来自分类Dev

C无限做while循环

来自分类Dev

在for和while循环中使用计数的C ++哨兵。陷入无限循环

来自分类Dev

使用std :: ofstream C ++的无限while循环

来自分类Dev

陷入无限循环和空白检测C ++

来自分类Dev

C while循环无限循环EOF不起作用

来自分类Dev

C ++ While循环即使在正确答案下也可以无限循环

来自分类Dev

前哨控制while循环C#

来自分类Dev

C ++:布尔表达式导致无限While循环

来自分类Dev

在C中使用scanf停止无限while循环?

来自分类Dev

C 上的无限 do-while 循环(2 个条件)

来自分类Dev

Ctrl + C命令不会终止无限(while)循环

来自分类Dev

在C exe和C#exe中执行无限循环

来自分类Dev

无限while循环和结构

来自分类Dev

无限while循环和结构

来自分类Dev

模板循环中的c ++ 11 decltype和无限递归

来自分类Dev

Qt / C ++:可检查的按钮和无限循环

来自分类Dev

模板循环中的c ++ 11 decltype和无限递归

来自分类Dev

C ++,获得无限循环

来自分类Dev

C#无限循环

来自分类Dev

C ++,无限循环

来自分类Dev

C中的无限循环

来自分类Dev

C程序无限循环

来自分类Dev

MessageBox和while循环C#

来自分类Dev

C-while和for循环的奇怪行为

来自分类Dev

C ++中的整数和while循环...如何?

来自分类Dev

c isalpha和isdigit while循环

来自分类Dev

C 程序 \n 和 while 循环

来自分类Dev

添加while循环以继续或退出C ++中的控制台