结构体变量赋值问题
定义一个结构体
struct Output
{
char value[1024];
};
Output *outdata;
定义一个变量
unsigned char data[1024];
memset(data,0,1024);
memcpy(data,"123456",6);
//此处内存错误
memcpy(outdata[1].value,data,strlen((const char*)data));
请教各位,为什么会出现内存错误呢?
错误为:
Unhandle exception in xx.exe(msvcrt.dll)):0xc0000005():access voilation
[解决办法]
outdata只是一个指针而已, 没有分配内存
struct Output *outdata = (struct Output*)malloc(sizeof(struct Output) * 100);
[解决办法]
不再使用时,就可以删掉了
[解决办法]
1楼正解。。。