主题:请帮忙看看下面的程序问题出在什么地方? 共有36291人关注过本帖 |
---|
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。改成一种类型就正常了。 |
|
单帖管理 | 引用 | 回复 |