【发布时间】:2014-09-10 06:43:27
【问题描述】:
我需要使两个结构的内容位于两个结构大小的单个缓冲区内。我需要使用 memcpy 来执行此操作。
这是我当前的代码:
struct Header header;
struct Data_Format DF;
char *buffer[28];
header.Start = 0x7E;
header.Options = 0x00;
DF.Address = 0x007CB;
DF.Result = 0x105BA;
memcpy(buffer,&header,sizeof(header));
如何使 DF 结构在标头完成的地方继续?
【问题讨论】:
-
使用指针算法和
sizeof运算符? -
另请注意,您声明
buffer是一个包含 28 个字符的 指针 的数组,这可能不是您想要的。 -
@JoachimPileborg 那么它应该只是“char buffer[28]”成为一个 28 字节的缓冲区吗?
标签: c pointers struct buffer memcpy