//提示Access violation是什么原因

James_ht 2006-03-30 04:58:30
如题。
环境 VC6.0. OS:win2k

#include "stdafx.h"
#include <string.h>
typedef struct
{
int other_frequency_flags;
} T_FETerrestrial;

typedef struct
{
T_FETerrestrial Transponder[10];
}DspFlashImage;

static DspFlashImage FlashImage ;

int main(int argc, char* argv[])
{


T_FETerrestrial *DSPTransponder= FlashImage.Transponder;

T_FETerrestrial ** transmitter;

*transmitter = &(DSPTransponder[0]); //提示Access violation是什么原因

printf("Hello World!\n");

getchar();

return 0;
}
...全文
162 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinjiajie 2006-03-30
  • 打赏
  • 举报
回复
transmitter=(T_FETerrestrial **)malloc(sizeof(T_FETerrestrial **));

在前面加上这句...
James_ht 2006-03-30
  • 打赏
  • 举报
回复
谢谢。明白了。
James_ht 2006-03-30
  • 打赏
  • 举报
回复
请问要怎么样改一下?谢谢了。
ykzhujiang 2006-03-30
  • 打赏
  • 举报
回复
前面说错了,是你的transmitter指向为空,因此不能使用*
findcsdn 2006-03-30
  • 打赏
  • 举报
回复
transmitter 是任意值

*transmitter 访问了任意内存。

transmitter = &DSPTransponder;
jinjiajie 2006-03-30
  • 打赏
  • 举报
回复
没分配内存就用了
ykzhujiang 2006-03-30
  • 打赏
  • 举报
回复
内存访问失败
DSPTransponder[0]没有获得你想要的值

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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