首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

请教在linux下C中({})是什么用法

2013-10-17 
请问在linux下C中({})是什么用法如下代码,我知道功能,但是这是什么用法啊,我都不知道怎么去google#include

请问在linux下C中({})是什么用法
如下代码,我知道功能,但是这是什么用法啊,我都不知道怎么去google

#include<stdio.h>
//#include<iostream>
int main(int argc,char** argv){ 
        int a=({int m1=1;
                int m2=2;
                int m3=3;     
                char  d='a';
                1;
                m3; 
                //d;//invalid
                //m1>m2?m1:m2;  
        }); 
        //std::cout<<a<<std::endl;
        printf("a=%d\n",a);
        return 0;
}
linux c google
[解决办法]
试试:braced-groups within expressions
[解决办法]
具有返回值的复合语句 
复合语句是大括号包围的语句块, 其返回值是复合语句中最后一个表达式的类型和值. 
例如: 
ret = ({ 
    int a = 5; 
    int b; 
    b = a+3; 
    }); 
返回值ret的值是8. 

热点排行