找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 620|回复: 13
打印 上一主题 下一主题
收起左侧

为啥还是报错呀?明明打了分号的

  [复制链接]
跳转到指定楼层
楼主
ID:1176901 发表于 2026-9-30 19:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
为什么还是报错明明打了分号的

屏幕截图(124).png (542.08 KB, 下载次数: 0)

屏幕截图(124).png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶顶 踩踩
回复

使用道具 举报

沙发
ID:332444 发表于 2026-10-1 04:23 | 只看该作者
提示第9行;是多余的,是非法的,不应该存在。
回复

使用道具 举报

板凳
ID:88256 发表于 2026-10-1 07:57 | 只看该作者
第9行不是独立的,还包含后面的花括号,所以是不能用分号的,必须去除,第15行的分号也要去除。
回复

使用道具 举报

地板
ID:1176893 发表于 2026-10-1 08:22 | 只看该作者
void打错了,你打成viod了
回复

使用道具 举报

5#
ID:69038 发表于 2026-10-1 08:25 | 只看该作者
15行多了个0,没看见啊?!!!
回复

使用道具 举报

6#
ID:277550 发表于 2026-10-1 09:05 | 只看该作者



9 的分号要删除,15的保留
回复

使用道具 举报

7#
ID:1109793 发表于 2026-10-1 10:09 | 只看该作者
hhdsdy 发表于 2026-10-1 07:57
第9行不是独立的,还包含后面的花括号,所以是不能用分号的,必须去除,第15行的分号也要去除。

还有15行里面那个J--0的0是几个意思?
回复

使用道具 举报

8#
ID:1109793 发表于 2026-10-1 10:10 | 只看该作者
猜测是15行里面的那个J--0的报错,然后以为是缺分号,加了还报错
回复

使用道具 举报

9#
ID:1136941 发表于 2026-10-1 10:20 | 只看该作者
viod是什么意思?
回复

使用道具 举报

10#
ID:1136941 发表于 2026-10-1 15:07 | 只看该作者
xiaobendan001 发表于 2026-10-1 10:10
猜测是15行里面的那个J--0的报错,然后以为是缺分号,加了还报错

你第九行的viod是什么意思?应该是void吧。
回复

使用道具 举报

11#
ID:1109793 发表于 2026-10-1 16:21 | 只看该作者
太阳雨ZW 发表于 2026-10-1 15:07
你第九行的viod是什么意思?应该是void吧。

对啊,错误太多了
回复

使用道具 举报

12#
ID:1176922 发表于 2026-10-1 21:38 | 只看该作者
15行j--0,应该是j--,9行的viod改成void,后面的分号也去掉
回复

使用道具 举报

13#
ID:1034262 发表于 2026-10-2 11:00 | 只看该作者
一堆错误,还有UCAHR,写程序是一个要很小心仔细的活。
回复

使用道具 举报

14#
ID:342822 发表于 2026-10-3 19:19 | 只看该作者
/* Main.c file generated by New Project wizard
*
* Created:   周六 10月 3 2026
* Processor: AT89C52
* Compiler:  Keil for 8051
*/

#include<reg51.h>
#define UCHAR unsigned char
#define UINT unsigned int

UCHAR code smg[] = {
    0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90
};
sbit KEY = P3^2;

void delaylms(UINT n);  // 这个声明提示编译器:不要忘记主函数main的前或后有个地雷延迟函数!

// 延时函数定义     有上面的声明这个地雷函数可以埋在主函数前或者主函数后
void delaylms(UINT n)
{
    UCHAR i,j;
    while(n--)
    {
        for(i=128;i>0;i--);
        for(j=34;j>0;j--);
    }
}

// 主函数(程序的入口)
void main()
{
    UCHAR num = 0;  // 用于计数的变量
   
    while(1)  // 死循环,让单片机一直运行
    {
        // 1. 使用数组(消除第二个警告)
        P0 = smg[num];  // 假设数码管接在P0口,显示数字
        
        // 2. 调用延时函数(消除第一个警告)
        delaylms(1000);  // 延时一段时间
        
        // 简单的数字累加逻辑
        num++;
        if(num > 9)
        {
            num = 0;
        }
    }
}

评分

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

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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