为什么这不起作用
for( int i = 0, int x = 0; some condition; ++i, ++x )
Run Code Online (Sandbox Code Playgroud)
这是
int i, x;
for( i = 0, x = 0; some condition; ++i, ++x )
Run Code Online (Sandbox Code Playgroud)
谢谢
fre*_*low 37
当你需要声明两个不同类型的变量时,它不能通过一个声明来完成
Hackety hack hack:
for (struct {int i; char c;} loop = {0, 'a'}; loop.i < 26; ++loop.i, ++loop.c)
{
std::cout << loop.c << '\n';
}
Run Code Online (Sandbox Code Playgroud)
;-)
ser*_*iom 33
这工作:
for( int i = 0, x = 0; some condition; ++i, ++x )
Run Code Online (Sandbox Code Playgroud)
它就像一个变量声明:
int i, j; // correct
int i, int j; // wrong, must not repeat type
Run Code Online (Sandbox Code Playgroud)
为什么它有效?这是一个语法上毫无意义的委托.你想用它说什么?
for
标题的第一部分是声明.该
int i = 0, int x = 0
Run Code Online (Sandbox Code Playgroud)
不是有效的声明.它不会编译,for
因为它不会在程序中的任何其他位置编译
int i = 0, int x = 0; // Syntax error
Run Code Online (Sandbox Code Playgroud)
当您需要int
在一个声明中声明两个类型的对象时,您可以按如下方式执行此操作
int i = 0, x = 0; // OK
Run Code Online (Sandbox Code Playgroud)
可以使用相同的东西 for
for( int i = 0, x = 0; some condition; ++i, ++x )
Run Code Online (Sandbox Code Playgroud)
(但是当你需要声明两个不同类型的变量时,它不能通过一个声明来完成,因此,两者都不能同时声明for
.至少其中一个必须在之前声明for
.)
归档时间: |
|
查看次数: |
17253 次 |
最近记录: |