C复合文字

C99之前,可以传递数组,但是没有所谓的数组常量可供传递,于是新增了复合文字。

普通数组声明方法:

  int d[2]={10,20};

复合文字声明: 与数组名相同,常量同时代表元素的地址。

  (int [2]){10,20};//创建一个含两个int数组的无名称数组。

既然是无名,那怎么调用? 所以需要一种方法,就是使用指针保存其位置。

int * p;

pt1=(int [2]){10,2};

或者 pt1=(int [] ){10,2}; //复合文字的定义也可以省略大小,系统会计算。

 

处理二维数组或多为数组:

int (*p2) [4];

p2=(int[2][4]){{1,2,3,4},{5,6,7,8}};

  

tianjiale菜鸟名企梦
原文地址:https://www.cnblogs.com/tianjiale/p/9906201.html