首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

为啥这个strcpy执行了,程序就access violation

2013-03-14 
为什么这个strcpy执行了,程序就access violation是一个将一个哈希表里的单词导入到另一个数组里面代码:str

为什么这个strcpy执行了,程序就access violation
是一个将一个哈希表里的单词导入到另一个数组里面
代码:
strcpy(temp[word_num].word,hlist[i].word);
之前已经导入了n个了,到了第n+1的时候,我用单步调试。
hlist[i].word 的值是:0x00000001“”“”
temp[word_num].word里面是:0x000f38c4“烫烫烫烫烫”

执行下一步就显示:unhandled exception in main。exe:0xc0000005:access violation的字样
这是为什么呢?
[解决办法]
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。
判断是否越界访问,可以在数组的最后一个元素之后对应的地址处设置数据读写断点。如果该地址对应其它变量干扰判断,可将数组多声明一个元素,并设置数据读写断点在该多出元素对应的地址上。

[解决办法]
访问越界了,这个要注意一下
[解决办法]
temp[word_num].word这个空间太小了,不停的往里填,导致其越界了!

热点排行