如何使这个无限循环?

时间:2015-03-26 23:53:12

标签: c++ codeblocks

  1. 我正在尝试制作此代码"移动"从左到右。我成功地将它从右移动。问题是现在,我该如何无限地运行?好吧,我不熟悉C ++,因为我是初学者。我试图在互联网上搜索如何使代码无限运行,我找到了一个for(;;)循环,我把它放在我的第一个for循环开始的地方。但它不起作用。你能给我一些提示或任何提示吗?

     #include <iostream>
     #include <cstdlib>
     #include <string>
     #include <ctime>
     #include <iomanip>
     #include <windows.h>
    
     using namespace std;
     int main ()
     {
         string a;
         cout <<"Enter String : ";
         cin >> a;
         cout << '\n' << '\n' << '\n' << '\n';
         for(int x = 0; x <= 20; x++ ) {  
             Sleep(200);
             system("cls");
             cout <<"Enter String : ";
             cout << a;
             cout << '\n' << '\n' << '\n' << '\n';
             cout << setw(x)<< a;
         }
         for(int y = 20; y <= 20; y-- ) {
             Sleep(200);
             system("cls");
             cout <<"Enter String : ";
             cout << a;
             cout << '\n' << '\n' << '\n' << '\n';
             cout << setw(y)<<a;
         }
         return 0;
      } 
    
  2. 输出应显示如下:

    Enter string: Hello Friend
    
    
    "Hello Friend" > it will move to the right and after 20 spaces.
                           <  now it move back to the left < "Hello Friend"
    

    我也看到了一个&#34; Void&#34;代码它做了什么?它与我的代码有关吗?

2 个答案:

答案 0 :(得分:0)

通常你可以写一个这样的无限循环:

while (1){
  //do coding
}

当while()语句为true时循环运行。 1总是如此。 你可以使用&#34; break;&#34;无论什么时候都要停止无限循环。

答案 1 :(得分:0)

主要罪魁祸首就是这一行for(int y = 20; y <= 20; y-- )将其编辑为for(int y = 20; y >= 0; y-- ),然后将两个for循环放入while(1){ }

这里是完整的代码:

int main ()
 {
     string a;
     cout <<"Enter String : ";
     cin >> a;
     cout << '\n' << '\n' << '\n' << '\n';

     while(1){ //infinite loop starts

     for(int x = 0; x <= 20; x++ ){  
     Sleep(200);
     system("cls");
     cout <<"Enter String : ";
     cout << a;
     cout << '\n' << '\n' << '\n' << '\n';
     cout << setw(x)<< a;
     }
     for(int y = 20; y >= 0; y-- ){ //make sure this condition
     Sleep(200);
     system("cls");
     cout <<"Enter String : ";
     cout << a;
     cout << '\n' << '\n' << '\n' << '\n';
     cout << setw(y)<<a;
     }

 }
     return 0;
}

&#34;我也看到了&#34; Void&#34;代码它做了什么?它与我的代码有关吗?&#34;:基本上它意味着&#34;没有&#34;或&#34;没有类型&#34;。
使用void有三种基本方法:

函数参数:int func(void) - 该函数将nothing.same作为int func()

函数返回值:void func(int) - 函数不返回任何内容

通用数据指针:void* data - &#39;数据&#39;是指向未知类型数据的指针,不能被解除引用 并且它与您的代码无关。