导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→C51编程:请前辈帮我看看好吗?[jetsky]

 *第1273篇: C51编程:请前辈帮我看看好吗?

  
楼 主:jetsky 2001年11月28日16:13
 C51编程:请前辈帮我看看好吗?
这个程序连编译都不行,是为什么啊。说是s, m,h那些变量indefined identifier。
还有就是syntax error near 'h'
我应该怎么改啊。

#include <reg51.h>
#include <stdio.h>

void main (void)
{
  TMOD=0x22h;
  TH1=0xfd;
  TL1=0xfd;
  TH0=0xf8;
  TL0=0xf8;
  PCON=0x00;
  SCON=0xd0;
  IE=0x9a;
  PT1=1;
  TR1=1;
  TR0=1;
  
  unsigned int x,h,m,s;
  x=0;
  h=0;
  m=0;
  s=0;

  x++;
  if (x>38400)
  { if (h<13)
    { if (m<60)
       { if (s<60)
          {printf("time is %d,%d,%d\n",h,m,s);
           s++;
          }
          else
          { s=0; m++;
            printf("time is %d,%d,%d\n",h,m,s);
          }
        }
       else
        { s++; m=0; h++;
          printf("time is %d,%d,%d\n",h,m,s);
        }
     }
    else 
     {s++; m++; h=0;
      printf("time is %d,%d,%d\n",h,m,s);
     }
  }
}
           

  
2楼:甲方乙方 2001年11月28日17:44
 把unsigned int x,h,m,s;移到MAIN函数的第一行定义:)
  
3楼:剑客N 2001年11月28日17:59
 TMOD=0x22h;  h不要!
  
4楼:jetsky 2001年11月29日11:42
 谢谢前辈了。
  
5楼:幽游梦蝶 2001年11月29日20:18
 你比我还菜!
1。“TMOD=0x22h"中的"h"不要
2。printf是TC中的函数,c51中好象不能用
3。变量定义好象不能象TC那样能任意位置定义
  
6楼:剑客N 2001年11月30日10:50
 你的第1、3是对的,但2点是错的,在C51里有printf()函数,作为格式化输出数据到串口,但建议少用,占地比较大!

>>>>>>对该主题发表你的看法

本主题贴数6,分页: [第1页]


[上一篇主题]:初学者:我是个初学者怎样入门!

[下一篇主题]:MSP430单片机:link时出现Error[e12]: Unable to&n