如何使用C ++终止3个点的“加载...”程序?

时间:2013-06-16 11:16:59

标签: c++ turbo-c++

你可能已经在很多地方看到过"正在加载...... " 3点(或更多)的地方,即" ...",首先逐个出现,然后在显示所有点后,它们消失并再一次出现(因此,总共2次)并退出。

详细说明: -

第1阶段:

  

装载。

第二阶段:

  

中..

第3阶段:

  

加载...

     

然后,它重复第二次,之后终止!

所以,为此,我准备了一个C ++程序,其源代码是:

#include <iostream.h>
#include <time.h>
#include<dos.h>
int main()
{
    cout << "Loading";
    cout.flush();
    for (;;) {
        for (int i = 0; i < 3; i++) {
            cout << ".";
            cout.flush();
            sleep(1);
        }
        cout << "\b\b\b   \b\b\b";
    }

    return 0;
}

此程序未终止。它没有停止!如何编辑它以使其终止?

请发布 Turbo C ++编译器支持的代码,因为我对ANSI C ++并不太了解!! :P

注意:这不是一个重复的问题,所以不要把它标记为重复!!!

先谢谢! :)

4 个答案:

答案 0 :(得分:1)

  

它重复第二次,然后终止

为了做到这一点,你不需要在程序的某处2吗?

也许在for (;;)的某个地方?与您计划中的其他for类似......

一些修辞问题:

  • 您认为for (;;)的作用是什么?
  • 为什么你认为将一个人的自我限制在Turbo C ++编译器是一个好主意?

答案 1 :(得分:0)

你写了for(;;)。为什么会终止?它是一个无限循环。

如果您希望外循环仅运行2次,为什么不for(int j = 0; j < 2; ++j){other loop}

答案 2 :(得分:0)

#include <iostream.h>
#include <time.h>
#include<dos.h>
int main()
{
    cout << "Loading";
    cout.flush();
    //The outer "for" didn't stop in your case, use this:
    for (int iterations = 0; iterations < 2; ++iterations) {
        for (int i = 0; i < 3; i++) {
            cout << ".";
            cout.flush();
            sleep(1);
        }
        cout << "\b\b\b   \b\b\b";
    }

    return 0;
}

答案 3 :(得分:0)

您至少有两个选择:

  1. for(;;)替换为

    for(int j=0; j < 2; ++j) { /*inner loop here*/ }

  2. 按原样保留for(;;),但请执行以下操作:

    int loopcount = 0; for(;;) /* your loop */ { /* add this after inner loop */ ++loopcount; if(loopcount > 1) break; }