Yif*_*fan 2 c c++ gcc-extensions cl
我有以下代码:
int x;
x = ({ 1; 2; 3; });
printf("%d\n", x); // should be 3
Run Code Online (Sandbox Code Playgroud)
(如果你很好奇为什么我会编写那样令人厌恶的代码.答案是我不是.我正在编写一个输出C代码的生成器,并且这样的语句会使事情变得容易多了.)
该代码编译并在Apple LLVM版本7.0.2上运行(当然会对未使用的代码发出警告)但在MSCL 10.0和14.0中失败(错误C2059:语法错误:'{').
我的问题是:1)是否有这种代码的名称(-abuse)?2)在任何C/C++标准中是否合法?3)有没有办法让MSCL接受它?