【发布时间】:2011-04-20 14:28:25
【问题描述】:
尽管风格不好,但在 C 语言中,在括号内有一个带大括号的 for 循环是否合法?像这样:
char *a = "a ";
char *b = "b ";
for ( { int aComesFirst = 1;
char *first = a;
char *second = b;
};
aComesFirst >= 0;
{ aComesFirst--;
swap(first, second);
} )
{
printf("%s%s\n", first, second);
}
如果有可能,我应该在第一个右大括号后加一个分号,还是添加一个空语句?
我确实意识到,将 char* 声明移到 for 循环之外,将 swap 声明移到循环内部的末尾在风格上会更好。但是样式不是这个问题的重点,我只想知道是否可以在括号内放置大括号。
【问题讨论】:
-
我认为那个可怕的东西真的可以编译?
-
不,它没有。这只是我正在寻找的答案形式的一个例子。
标签: c for-loop curly-braces