在keil3中编译程序时出现了C:\KEIL\C51\INC\ATMEL\REG51.H(13): 错误 C231: 'P0': redefinition,咋办呀

如题所述

第1个回答  2013-04-14
P0重定义了,如果你自己定义过,把自己的定义去掉。本回答被提问者采纳
第2个回答  2013-04-15
去掉你自己的定义,P0的定义。
第3个回答  2013-04-15
redefinition 那可能是你的头文件中已经包含那个字符名 只要字符换一个就行了

在keil3中编译程序时出现了C:\\KEIL\\C51\\INC\\ATMEL\\REG51.H(13...
P0重定义了,如果你自己定义过,把自己的定义去掉。

error:c:\\keilc51\\c51\\INC\\reg51.h(13):error c141:syntax error near...
可能是你改过这个头文件,哪里改出问题了,仔细检查检查。还有就是你工程没建好,CPU没选,编译选项不正确等等,也要好好检查。你可以换个正确的工程编译编译,做做对比

刚开始学习keil C51,在下面的程序里老是报error C141: syntax error ne...
sbit 定义必须放在程序的前面,就是一定要放在main() 主程序的外面,不能在内部定义的。而且在程序的前面一定要加载头文件 include <reg51.h> 还有,你声明的那些变量,如果是全局变量,也要放在main()主程序的外部。而你这样声明,是局部变量了。

KeilC语言编程老出现: error C100:unprintable character 0xA1 ski...
出错的那一行,你也许输入了中文。你先把那一行注释掉,就看到了,把中文删除再编译就好了

我用keil编译老是有问题warning C318: can't open file 'i2c.h'和e...
你没把I2C.H这个头文件和这个文件放在同一个目录下,所以编译器表示没找到。uchar不是一种数据类型,必须在使用之前先定义#define uchar unsigned char

Keil调试程序编译时显示 *** WARNING L16: UNCALLED SEGMENT, IGNORED F...
你的警告是说函数 READ_RO 定义了却没有调用,你可以把这个函数删掉,也可以无视这个警告,不会影响程序。

keil uvision4中编译出现33.C(40): error C129: missing ';' befor...
首先,unint 是个啥东西?你要是不告诉编译器的话,它当然会报错!其次,写程序时用英文输入!别乱敲全角符号!

Keil遇到问题,不会改 TEXT1.C(33): error C216: subscript on non...
错误的意思是你把下标用在了一个非数组的变量上。从你的代码看, display不是数组,但第33句,使用了display[k]。所以出错。

keil调试一直出现*** error 56: can't open file还有测试.C(38): err...
因为你定义的sin数组,在定义结束的时候,也就是大括号外面没有加分号

keil uvision4运行如程序 出现了XIAOCHE.C(15): error C141: syntax...
P0^0=1;这种语句\/用法是不对的。正确的方法是在程序的开始声明特殊位变量,例如:sbit P0_0 = P0^0;之后才能在你的函数体里面P0_0 = 1;

相似回答