小编hum*_*mra的帖子

带循环的程序不会以CTRL + C终止

我有一个程序,我想运行,直到用户按下CTRL + C中断.当我按下它没有任何反应,我只能通过暂停它并在此之后手动终止它来终止程序.

这是需要无限运行的代码的一部分:

while(true) {
    liveOrDie(field);
    printOut(field);
}
Run Code Online (Sandbox Code Playgroud)

第一个函数计算是将1还是0放在二维数组中,第二个函数使用for循环将其打印出来,如下所示:

void printOut(int field[38][102]) {
for(int i = 0; i < 38; i++) {
    for(int j = 0; j < 102; j++) {
        if(field[i][j] == 1) {
            cout << "o";
        }
        else {
            cout << " ";
        }
    }
    cout << endl;
}

system("sleep .1");
}
Run Code Online (Sandbox Code Playgroud)

使用睡眠,因此有足够的时间在屏幕上清除所有内容.

所以,程序不会终止Ctrl+C.什么可能导致这种行为,以及如何使程序终止后Ctrl+C

c infinite

35
推荐指数
2
解决办法
3097
查看次数

标签 统计

c ×1

infinite ×1