博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c99:Designated Initializers(指定初始化)
阅读量:4035 次
发布时间:2019-05-24

本文共 525 字,大约阅读时间需要 1 分钟。

c99指定初始化用法

int al[5]={[2]=100,[1]=3} ;/*{0,3,100,0,0} */int a2[5]={[0]=10,[2]=-1,-1,-3} ;/* {10,0,-1,-1,-3} */int a3[]={
0,1,2,3,6,[2]=5}; /*{0,1,5,2,3,6} a3的长度是6 */int my_array[6] = { [4] = 29, [2] = 15 };int my_array[6] = { [4] 29, [2] 15 }; //省略到索引与值之间的=,GCC 2.5 之后该用法已经过时了,但 GCC 仍然支持

gnu扩展语法

  GNU 还有一个扩展:在需要将一个范围内的元素初始化为同一值时,可以使用 [first … last] = value 这样的语法:

int my_array[100] = { [0 ... 9] = 1, [10 ... 98] = 2, 3 };

  这是将my_array数组的第0~9个元素初始化为1, 第10~98个元素初始化为2, 第99个元素初始化为3(你也可以显示地写成[99] = 3),在该语法中… 两边必须要留有空格符。

转载地址:http://mmjdi.baihongyu.com/

你可能感兴趣的文章
GNU hello代码分析
查看>>
Qt继电器控制板代码
查看>>
wpa_supplicant控制脚本
查看>>
gstreamer相关工具集合
查看>>
arm 自动升级脚本
查看>>
RS232 四入四出模块控制代码
查看>>
gstreamer插件之 videotestsrc
查看>>
autoupdate script
查看>>
linux 驱动开发 头文件
查看>>
/etc/resolv.conf
查看>>
container_of()传入结构体中的成员,返回该结构体的首地址
查看>>
linux sfdisk partition
查看>>
ipconfig,ifconfig,iwconfig
查看>>
opensuse12.2 PL2303 minicom
查看>>
电平触发方式和边沿触发的区别
查看>>
网络视频服务器移植
查看>>
Encoding Schemes
查看>>
移植QT
查看>>
如此调用
查看>>
计算机的发展史
查看>>