Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops For和While循环:差异、问题和原因 我试图找出一些问题的答案,C++中的while循环和for循环之间的区别以及原因。这是我到目前为止想到的。据_Loops_For Loop_While Loop - Fatal编程技术网

Loops For和While循环:差异、问题和原因 我试图找出一些问题的答案,C++中的while循环和for循环之间的区别以及原因。这是我到目前为止想到的。据

Loops For和While循环:差异、问题和原因 我试图找出一些问题的答案,C++中的while循环和for循环之间的区别以及原因。这是我到目前为止想到的。据,loops,for-loop,while-loop,Loops,For Loop,While Loop,虽然是: while(表达式)语句 对于is: for(初始化;条件;增加)语句 所以在for循环中,初始化是我们声明要在条件语句中使用的变量的地方,对吗 条件是在什么条件下,才会循环 然后递增就是我们决定给变量加多少或减多少 在while循环中,表达式也是一个条件,对吗?或者在这种情况下,它们是完全不同的术语 我注意到在for循环中,如果我愿意,我可以将increase部分移到语句中,但是我不能在While循环中将increase放在括号中,或者在括号中声明变量(for循环中的初始化部分)。我

虽然是: while(表达式)语句

对于is: for(初始化;条件;增加)语句

所以在for循环中,初始化是我们声明要在条件语句中使用的变量的地方,对吗

条件是在什么条件下,才会循环

然后递增就是我们决定给变量加多少或减多少

在while循环中,表达式也是一个条件,对吗?或者在这种情况下,它们是完全不同的术语

我注意到在for循环中,如果我愿意,我可以将increase部分移到语句中,但是我不能在While循环中将increase放在括号中,或者在括号中声明变量(for循环中的初始化部分)。我有点好奇原因是什么


不管怎么说,我是在谷歌的帮助下自学的,还有来自人们的建议,我对编程非常陌生,所以请对我放松,我还没有掌握最新的行话或复杂的答案。:)如果您需要更多信息或其他任何信息,请告诉我。

for
循环中,初始化可能会声明变量或为变量赋值,或同时声明变量和/或赋值

根据编译器的不同,这些变量的范围会有所不同。例如,VC++6.0将把变量的范围扩展到循环之外,一种常见的规避方法是可怕的:

#define for if(0){} else for
事实上,语法的用法是:

for(初始化;循环条件表达式;循环时要运行的语句)


所有的循环都可以保留为空。

因为循环比真正的语言构造更方便。例如,
For
循环可以很容易地扩展为
while
循环


for(c=0;c通常,for语句用于和,而for语句用于

•语句
的大多数
可以用等效的
表示,而语句
如下所示:


参考资料:

好的,这很有帮助,你能不能再举一个for(node=start;node;node=node->next)的例子{}我不确定节点是什么。所以我没有真正得到这个例子。同样在初始化时,我能为(int I;I=0;iI)做些编辑,以便细化并添加一些额外的东西。能够像for一样在循环中声明x吗(int x;;)取决于语言。在C中是不允许的,但是在C++中是。好,我的意思是,我可以做更多(虽然i i;i=0;..)…或者我必须(int i=0;…)使用(int i=0;;)。(int i;i=0;)表示i=0是条件语句。
c=0;
while ( c<10 ) {
  // some statements
  c++;
}
// a very basic linked list node
struct node {
  struct node *next;
};
struct node; //declare our node

// iterate over all nodes from 'start' node (not declared in this sample)
for ( node=start; node; node=node->next ) {}