程序问题

[复制链接]
1442|15
 楼主| wangzsa 发表于 2018-8-13 16:23 | 显示全部楼层 |阅读模式
#include <reg52.h>
#include <intrins.h>

sbit LCD_RS = P2^6;                        //数据或指令
sbit LCD_RW = P2^5;                        //读或写
sbit LCD_EN = P2^7;                        //使能

void delay(unsigned int i);                //延时函数
void WCmd(unsigned char cmd);                //写指令
void WData(unsigned char data);                //写数据

void main()
{
         WCmd(0x06);
         WCmd(0x0c);
         
         WData('l');        
}

/*延时函数*/
void delay(unsigned int i)
{
         unsigned char j;

        for (; i>0; i--)
         {
                 for (j=255; j>0; j--);
         }
}

/*写指令*/
void WCmd(unsigned char cmd)
{
         LCD_RS = 0;
         LCD_RW = 0;
         delay(5);
         LCD_EN = 1;

        P0 = cmd;

        LCD_EN = 0;
}

/*写数据*/
void WData(unsigned char data)
{
         LCD_RS = 1;
         LCD_RW = 0;
         delay(5);
         LCD_EN = 1;

        P0 = data;        

        LCD_EN = 0;
}
MY-TEST.C(10): error C141: syntax error near ')'
MY-TEST.C(45): error C141: syntax error near ')'
MY-TEST.C(52): error C141: syntax error near 'data'
lium 发表于 2018-8-13 16:25 | 显示全部楼层

data是关键字
hanwe 发表于 2018-8-13 16:27 | 显示全部楼层
C51中可以指定变量存储在具体的存储器区域内:例如片内RAM、片外RAM、或者是ROM里。
yufe 发表于 2018-8-13 16:29 | 显示全部楼层

例如: char data test = 'c';
llia 发表于 2018-8-13 16:32 | 显示全部楼层

对,所以data不可以随便乱用,在微机的c语言里没有这个
langgq 发表于 2018-8-13 16:36 | 显示全部楼层
恩,完全同意
zhanglli 发表于 2018-8-13 16:39 | 显示全部楼层
单片机C51用 DATA,XDATA,BDATA,IDATA,CODE进行存储资源分配
lium 发表于 2018-8-13 16:43 | 显示全部楼层

syntax error near ')'
这种错误一般是什么造成的?
yufe 发表于 2018-8-13 16:45 | 显示全部楼层
MY-TEST.C(10): 是哪一行?
lium 发表于 2018-8-13 16:47 | 显示全部楼层
我也想知道
llia 发表于 2018-8-13 16:50 | 显示全部楼层

void WData(unsigned char data);                //写数据
void WData(unsigned char data)
P0 = data;  
上面三行,全出现了“data”。
wangpe 发表于 2018-8-13 16:53 | 显示全部楼层
我再说透点吧,也就是你的程序里面出现了“data”这个单词,这个词你千万别用,因为它也是关键词。
zhuww 发表于 2018-8-14 15:26 | 显示全部楼层

提示是语法错误,最常见是一句话后面忘了加分号。
你这里data是关键字不能乱用。
guoyt 发表于 2018-8-14 15:29 | 显示全部楼层

正解二楼已经给出:data是关键字不能这么用。换成data1(其它非关键字也可以)就没有错误了
hanwe 发表于 2018-8-14 15:32 | 显示全部楼层
LZ,你动了设计规则的人的奶酪啦
 楼主| wangzsa 发表于 2018-8-14 15:34 | 显示全部楼层
嗯,预料中的结果,先结贴吧,多谢大家啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

914

主题

9040

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部