c语言复合字面10

Posted 周三石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言复合字面10相关的知识,希望对你有一定的参考价值。

(  []){"abc"} == "abc" // 可以为 1 或 0 ,实现定义
 f ()
{
s { i;} *p = 0, *q;
j = 0;
再次:
q = p, p = &(( s){ j++ });
(j < 2) 再次; // 注意:若使用循环,则其作用域会结束于此,
// 这会终止复合字面量的生存期,
// 令 p 为悬垂指针
p == q && q->i == 1; // 始终返回 1
}
 *p = ([]){2, 4}; // 创建一个无名的 整[2] 类型静态存储数组
// 初始数组为值 {2, 4}
// 创建指向数组首元素的指针 p
*pc = ( []){1e0, 1e1, 1e2}; // 只读复合字面量

()
{
n = 2, *p = &n;
p = ( [2]){*p}; // 创建一个无名的 整[2] 类型自动存储数组
// 初始化首个元素为之前 *p 所持有的值
// 初始化第二个元素为零
// 将首元素的地址存储到 p

{双精 x,y;};
画行1( 点 从, 点 到);
画行2(*从, *);
画行1((){.x=1, .y=1}, // 创建二个块作用域的结构体
(){.x=3, .y=4}); // 然后调用 画行1 ,以值传递
画行2(&(){.x=1, .y=1}, // 创建二个块作用域的结构体
&(){.x=3, .y=4}); // 然后调用 画行2 ,传递其地址
}


以上是关于c语言复合字面10的主要内容,如果未能解决你的问题,请参考以下文章

java 常量池

C语言复合语句的使用

linux C语言 宏函数展开测试(复合语句表达式 ({}))

c语言串字面37

go语言入门四(复合类型 数组切片 指针)

go语言入门四(复合类型 数组切片 指针)