数组循环不工作

Not working array loop

本文关键字:工作 循环 数组      更新时间:2023-10-16

为什么不工作?我只想要加载效果。我刚刚用g++编译器编译了代码。打印* * * B R E A K * * *需要时间。每个字母之间没有区别。

#include <iostream>
using namespace std;
int main()
{
    int wait = 1000000000;
    char text[] = {"* * * B R E A K * * *"};
    for(int i = 0; i < 21; i++)
    {
        cout << text[i];
        for(int j = 0; j < wait; j++)
            ;
    }
}

等待循环可能从代码中优化出来,因为编译器可以看到它没有效果。试着做一个纳米睡眠,比如

#include <iostream>
#include <unistd.h>
using namespace std; 
int main()
{
   char text[]={"* * * B R E A K * * *"};
   for(int i=0;i<21;i++)
   {
      cerr<<text[i];
      usleep(100000);
   }
}

同样,std::cout是缓冲的,这意味着它不会写入,直到有一个换行符,程序终止或刷新—为了简单起见,将cout更改为cerr,这是非缓冲的....