如何将结构体的数据放进一个数组里面?

LAST_MAN 2012-06-08 11:06:23
#include<iostream>
using namespace std;
struct A{
int a;
char b;
};
void main()
{
A *t;
t=(A*)malloc(sizeof(A));
t->a=2;
t->b='a';
void buf;
buf=(A*)malloc(sizeof(A));
memcpy(buf,t,2);
cout<<buf;

}

这是我写的代码,想将一个结构体的数据放进一个数组,然后再将数组内容打印出来
我期待的是输出2a
请问要怎么修改
我这样写报错了
...全文
1135 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mario_Q 2012-06-08
  • 打赏
  • 举报
回复
#include<iostream>
#include<cstring>
using namespace std;
struct A{
public:
int a;
char b;

};
int main()
{
A *t;
t=(A*)malloc(sizeof(A));
t->a=2;
t->b='a';
void* buf;
buf=(A*)malloc(sizeof(A));
memcpy(buf,t,sizeof(*t));
cout<<((A*)buf)->a<<((A*)buf)->b<<endl;
return 0;
}
这里是把A指向的内容,按字节拷贝给buf,然后输出。
void * memcpy ( void * destination, const void * source, size_t num );
最后一个参数是指拷贝的字节数 参考http://www.cplusplus.com/reference/clibrary/cstring/memcpy/

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧