今天偶尔 发现个 很纠结的问题
先把程序 上传了
#include<reg52.h>
#define uint unsigned int
void abc(void)
{
uint a;
a++;
}
void main()
{
uint b;
while(1)
{
b++;
abc();
}
}
按照 程序的流程b++ 后 等到 执行到 abc() 函数 后 a才 ++ 可是 在调试的时候
MMX0E5L2V3JR)OJ[UESKRL5.jpg (7.86 KB, 下载次数: 0)
下载附件
2012-6-8 22:34 上传
b++ 刚执行完 a 就是加一了
还有个问题 是 明明在程序中 a 定义的是 uint 类型 应该 16位的 在调试的时候只有 8位了 百思不得其解
哪位 大大能够解释 解释的
正解。
LZ你把你abc函数里的变量a改个名字,再调试观察,就知道是怎么回事了。
一周热门 更多>