找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 17338|回复: 7
收起左侧

keil里的error c141语法错误,怎么解决

[复制链接]
ID:383845 发表于 2018-8-7 15:33 | 显示全部楼层 |阅读模式
1.png
  1. #include<reg52.h>
  2. typedef unsigned char u8;
  3. typedef unsigned int u16;
  4. sbit Q1=P2^2;
  5. sbit Q2=P2^3;
  6. sbit Q3=P2^4;
  7. u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
  8.      0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  9. void delay(u16 i)
  10. {
  11. while(i--);
  12. }
  13. void display()
  14. {
  15. u8 i;
  16. for(i=0;i<8;i++)
  17. {
  18.   switch(i)
  19.   {
  20.    case(0):
  21.     Q1=0;Q2=0;Q3=0;break;  
  22.    case(1):Q1=1;Q2=0;Q3=0;break;
  23.    case(2):Q1=0;Q2=1;Q3=0;break;
  24.    case(3):Q1=1;Q2=1;Q3=0;break;
  25.    case(4):Q1=0;Q2=0;Q3=1;break;
  26.    case(5):Q1=1;Q2=0;Q3=1;break;
  27.    case(6):Q1=0;Q2=1;Q3=1;break;
  28.    case(7):Q1=1;Q2=1;Q3=1;break;
  29.   }
  30.   P0=smgduan[i];
  31.   delay(100);
  32.   P0=0x00;
  33. }
  34. }
  35. void main()
  36. {
  37. while(1)
  38. {
  39.   display();
  40. }
  41. }
复制代码
回复

使用道具 举报

ID:354282 发表于 2018-8-7 15:58 来自手机 | 显示全部楼层
while(1)后面是不是少个分号

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:308437 发表于 2018-8-7 16:08 | 显示全部楼层
最后面补一个大括号.--(不行,再私聊)
回复

使用道具 举报

ID:382600 发表于 2018-8-7 18:39 来自手机 | 显示全部楼层
case(0)后面是要加分号的,
回复

使用道具 举报

ID:383845 发表于 2018-8-7 19:04 | 显示全部楼层
jefelee 发表于 2018-8-7 15:58
while(1)后面是不是少个分号

试了,没有用
回复

使用道具 举报

ID:383845 发表于 2018-8-7 19:04 | 显示全部楼层
yousunny 发表于 2018-8-7 16:08
最后面补一个大括号.--(不行,再私聊)

不行呢
回复

使用道具 举报

ID:164602 发表于 2018-8-8 08:35 | 显示全部楼层
第一:你贴出来的程序没有错误,我已经在我的keil中编译通过了。
第二:你贴出来的程序只有41行,而你发的错误图片中,错误在59行,说明你的程序中,还有没有看到的内容,你再看看,是不是有你不需要的内容还在编译器内。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:627199 发表于 2019-10-20 22:41 来自手机 | 显示全部楼层
jefelee 发表于 2018-8-7 15:58
while(1)后面是不是少个分号

while(1)后边不用加也行,加了也没错,哈哈
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表