use*_*ser 10 c c++ for-loop declaration
我可以写简单吗?
for (int i = 0; ...
Run Code Online (Sandbox Code Playgroud)
代替
int i;
for (i = 0; ...
Run Code Online (Sandbox Code Playgroud)
在C或C++?
(并且变量i只能在循环内访问吗?)
Mar*_*ork 20
它在C++中有效
它在C的原始版本中是不合法的.
但是在C99中作为C的一部分被采用(当一些C++特性被反向移植到C时)
使用gcc
gcc -std=c99 <file>.c
Run Code Online (Sandbox Code Playgroud)
该变量在for语句和循环语句中有效.如果这是一个块语句,那么它对整个块都有效.
for(int loop = 0; loop < 10; ++loop)
{
// loop valid in here aswell
}
// loop NOT valid here.
Run Code Online (Sandbox Code Playgroud)
在C99或C++中执行此操作是完全合法的:
for( int i=0; i<max; ++i )
{
//some code
}
Run Code Online (Sandbox Code Playgroud)
它的while等价物是:
{
int i=0
while( i<max )
{
//some code
++i;
}
}
Run Code Online (Sandbox Code Playgroud)