主題:請幫忙看看下面的程序問題出在什么地方? 共有41422人關注過本帖 |
---|
111 |
1樓 |
請幫忙看看下面的程序問題出在什么地方? Post By:2009-6-23 10:14:00 [只看該作者]
請幫忙看看下面的程序問題出在什么地方:
下面是一段校驗和程序,Eda_Data[50]數組存放獲得的數據,共38個數據 Eda_Data[36]保存傳來的校驗和,我寫了如下的校驗程序: chk = 0; for (i = 2; i < 36; i++){ chk += Eda_Data[i]; } if(chk != Eda_Data[36])  return(2); //校驗錯誤 可是運行結果總是不對,從調試窗口看變量的值是相等的, 可是比較結果卻不同,把比較語句改成下面的語句后結構就正確了, chk1 = Eda_Data[36]; if (chk != chk1) return(2); //校驗錯誤 這是怎么回事啊? |
|
單帖管理 | 引用 | 回復 |
lickson |
2樓 |
Post By:2009-6-23 11:20:00 [只看該作者]
應該和你定義的數據類型有關!
|
|
單帖管理 | 引用 | 回復 |
111 |
3樓 |
Post By:2009-6-23 14:08:00 [只看該作者]
謝謝,果然如此。
chk1定義為char,Eda_Data[]定義成了BYTE。改成一種類型就正常了。 |
|
單帖管理 | 引用 | 回復 |