找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3094|回复: 4
收起左侧

MAIN.C(6): error C141: syntax error near 'sbit'

[复制链接]
回帖奖励 10 黑币 回复本帖可获得 10 黑币奖励! 每人限 1 次
ID:628542 发表于 2020-5-21 16:30 | 显示全部楼层 |阅读模式
本帖最后由 shahabuddeen 于 2020-5-21 16:34 编辑

KEIL编译报错
MAIN.C(7): error C141: syntax error near 'sbit'
MAIN.C(7): error C247: non-address/-constant initializer

报错的程序在下面

#include "reg51.h"
#include "num.h"

#define uchar unsigned char
#define uint unsigned int

sbit SCL=P1^0;
sbit SDA=P1^1;

sbit K0=P2^0;
sbit K1=P2^1;
sbit K2=P2^2;
sbit K3=P2^3;

在线等,急。


RAM5~O`@370KE74Y){1Q9[V.png
97Z)1VH)Y6M_WCAWIGH301E.png
回复

使用道具 举报

ID:628542 发表于 2020-5-21 19:10 | 显示全部楼层
顶一下
回复

使用道具 举报

ID:757689 发表于 2020-5-21 19:33 | 显示全部楼层
看看.h文件里是否有错,h文件里的错有时会显示在.c文件里
回复

使用道具 举报

ID:628542 发表于 2020-5-21 20:40 | 显示全部楼层
duguqiubai123 发表于 2020-5-21 19:33
看看.h文件里是否有错,h文件里的错有时会显示在.c文件里

我看头文件里面只定义了P1的总地址,没有定义P1^1,怎么办?
回复

使用道具 举报

ID:267719 发表于 2020-5-22 13:18 | 显示全部楼层
reg51.h是你另加的?不是Keil自带的?
或者说是系统自带的,然后被你改了?

第一种情况的解决办法就是删掉你另加的,keil会自动找头文件。如C:\Keil\C51\INC下就有这个文件。
如果说是系统自带的被你改了,重新安装恢复下就行。

我复制了你的代码,测试下来没问题的。用的keil带的reg51.h。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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