这程序哪里错误

来源:百度知道 编辑:UC知道 时间:2024/06/04 19:53:08
#include<reg51.h>
#define uint unsigned int
void main(void){
TMOD=0x61;
uint a=0;
uint SEC=0;
uint NUM=0;
uint T=0;

TRO=1;
for( ; ; ){
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
do{}while(!TF0);
if(a!=9) a++;
else if(SEC!=59) a=0;SEC++;
else if(NUM!=59) a=0;SEC=0;NUM++;
else if(T!=23) a=0;SEC=0;T++;
else T=0;
TF0=0;
}}

单片机的C语言 编译老是说
定义a SEC NUM T错误 我看不出哪里出错 高手指点下
改成这样就对了
#include<reg51.h>
#define uint unsigned int
void main(void){
uint a=0;
uint SEC=0;
uint NUM=0;
uint T=0;
TMOD=0x61;
TR0=1;
for( ; ; ){
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
do{}while(!TF0);
if(a!=9) a++;
else if(SEC!=59) a=0,SEC++;
else if(NUM!=59) a=0,SEC=0,NUM++;
else if(T!=23) a=0,SEC=0,T++;
else T=0;
TF0=0;
}}

不过还是要谢谢大家

改成
#define uint unsigned
就可以了

#define 宏名称 宏代表内容
#define uint unsigned int 会造成指代不明确性错误

unsigned其实就是unsigned int

unit这是什么啊,换成int试试吧。他的错误提示是说你定义出错啊。

把uint换成int 试一下,要不在C++上运行一下就知道了!会提示哪里有红色的就是错的了