首页 > 代码库 > c语言:复合文字

c语言:复合文字

复合文字的意义,相当于是在C语言中,为数组类型定义了一种类似于8之于int,‘w‘之于char一样的常量类型,所以从C99之后,可以在一些地方使用复合文字来代替数组使用。

复合文字的声明

(int [3]){1,2,3};  //一个复合文字,定义类似于数组的定义
(int []){1,2,5,6,8}; //类似于数组,复合文字的定义也可以省略大小

因为复合文字没有名称,所以,不能在一个语句中创建,而在另一个语句中使用。必须在一个语句中创建的同时使用他们。

一种可能的使用方法是在创建的同时使用指针来保存地址 int *p=(int []){1,2,5,4}; 这样p指针指向的是复合文字首字符的位置,此时p[0]=1,p[1]=2.......

另外,复合文字也可以作为函数参数传递。

二维复合文字的定义

(int [2][3]){{1,2,3},
{7,5,3}};

 

c语言:复合文字