【发布时间】:2021-03-19 07:34:33
【问题描述】:
我定义了一个struct,有一个成员类型是uint8_t,这个成员存放mac地址。
在 Arduino IDE 上编程。
结构:
typedef struct devInfo{
uint8_t address[];
unsigned int count;
unsigned int filePos;
}struct_devInfo;
- 问题 1:
我用这两种方式赋值,但是不能给变量赋值。
方法一> struct_devInfo slave = {{0xA1, 0xB2, 0xC3, 0xD4, 0xE5, 0xF6}, 0, 0};
方法二> slave.address[] = {0xA1, 0xB2, 0xC3, 0xD4, 0xE5, 0xF6};
我如何访问这种类型的值?
- 问题 2:
我将使用这个结构的变量, salve1、slave2...等
除了结构,还有什么更好的办法吗? 你能示范一下吗?
【问题讨论】:
-
“不起作用”怎么办?我本来希望方法 1 可以工作,但方法 2 不行,因为你不能分配数组。对于问题 2,您想要“一些更好的方法”,但不清楚您指的是什么。
-
@PaulHankin 我的意思是我想为 uint8_t 这个变量存储一个值,我尝试使用两种方法来做这件事。
-
保罗的意思是你应该edit你的问题并告诉你如何知道它不起作用。例如一条错误消息。
标签: c arduino flexible-array-member