在C中暂停和恢复循环

时间:2012-06-13 12:57:29

标签: c loops resume

我正在用C编写游戏代码,其中包括用户输入的时间间隔显示数字。

srand ( time(NULL) ); //this avoids generating the same random number everytime
start:
    mySleep(userdelay);
    printf("\n\n\a\t%d",rand()%90); //prints random numbers with the time delay entered by the user.
goto start;

所以我只想知道如何使用“按1暂停”等用户输入暂停此循环,并使用“按2恢复”等用户输入恢复相同的循环。

提前Thanx!

1 个答案:

答案 0 :(得分:2)

我不确定这可能是最好的方法,但它可能是一种有效的方式。尝试在命令控制台中使用while循环:

int main(){
    int i;
    scanf("%d",&i)
    switch(i){
        case 1: while(i != 2){
                    sleep(1); //or define duration by a variable if time should be "dynamic"
                    scanf("%d",&i);
                    break;
                }
    }
}

我希望你能够了解这个想法。

编辑:

如果您希望用户输入数据直到“退出键”,则while循环比goto要好得多。如果您不熟悉switch(){},我建议您查看here