可能重复:
What's this C++ syntax that puts a brace-surrounded block where an expression is expected?
我刚刚遇到这种奇怪的C / C ++语法:
#include <stdio.h>
int main() {
printf("%s",
({
static char b__[129];
b__[0] = 55;
b__[1] = 55;
b__[2] = 0;
b__;
})
);
}
使用gcc和g ++(4.5.2)编译并运行良好。这是我第一次看到这样的东西,我想知道这种语法究竟意味着什么。我试过谷歌,但我不知道这个结构是什么。