【发布时间】:2017-12-09 00:14:00
【问题描述】:
鉴于这是合法的
uint8_t bytes[4] = { 1, 2, 3, 4 };
这不是:
uint8_t bytes2[4];
bytes2 = { 1, 2, 3, 4 };
{ 1, 2, 3, 4 } 代表什么?
我假设它既不是右值也不是左值。一个可以扩展成某种东西的预处理器代码糖果?
【问题讨论】:
-
不涉及预处理器。它只是 initialization 语法。不是分配。
-
结构也一样...
-
一个简单的语法
标签: c arrays initialization variable-assignment