📄 subject_20770.htm
字号:
<p>
序号:20770 发表者:sdf 发表日期:2002-11-10 11:00:03
<br>主题:一个奇怪的问题,help help help!
<br>内容:遇见一个问题,已经在下面注出了,m_nData与m_nPressData[i]的唯一区别在于前者是在<BR>该函数中定义的,而m_nPressData是在该类的.h文件中定义的。可就是出错,错误已经在后面<BR>写出了,诸位请指点一下。<BR>void COilLeakingCheckDoc::AddNewdata(BYTE m_nPressData1[2008])<BR>{<BR> BYTE m_nData[2008];<BR> int i;<BR> for(i=0;i<2008;i++)<BR> { <BR> m_nData[i]=m_nPressData1[i];//可以执行<BR> m_nPressData[i]=m_nPressData1[i];//不能执行<BR> }<BR>}<BR>错误:<BR>Warning: no message line prompt for ID 0x800D.<BR>Warning: no message line prompt for ID 0x8011.<BR>Warning: no message line prompt for ID 0x8010.<BR>First-chance exception in OilLeakingCheck.exe: 0xC0000005: Access Violation.
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:木子 回复日期:2002-11-10 11:23:46
<br>内容: m_nPressData[i]=m_nPressData1[i];//不能执行<BR>由于你<BR>AddNewdata(BYTE m_nPressData1[2008])<BR>传的是一个BYTE 大小的空间,也就是说在这里你只传过来数组的一个值,<BR>相当于m_nPressData1的2008分之一,而且这仅有的一个值,也是数组下标越界,<BR>所以在函数中没有数组m_nPressData1的内容,你可以跟踪程序看一下,<BR>m_nData[i]=m_nPressData1[i];这一步是把一个求知量赋给m_nData[i]<BR>把一个值赋给变量是可以的<BR>m_nPressData[i]=m_nPressData1[i];而这一步把一个值赋给一个没有空间的东西<BR>当然会出现<BR> Access Violation. (访问被阻碍)
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sdf 回复日期:2002-11-10 11:32:18
<br>内容:你所的是对的,原因是这样,但应如何纠正啊?我用<BR>AddNewData(BYTE nPressData1)好象不对啊,如果是指针,应该用AddNewData(BYTE *nPressData1),但后者好象出错和以前一样,不只为什么?<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sdf 回复日期:2002-11-10 11:36:33
<br>内容:分我先给你了,并向你表示十分的感谢
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -