欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 不簡單的requires ANSI-style prototype報錯 [打印本頁]

作者: ESJIAN    時間: 2024-3-14 22:54
標題: 不簡單的requires ANSI-style prototype報錯
子函數(shù)皆報錯:KMS.c(28): error C267: 'lcd_control': requires ANSI-style prototype

我已經(jīng)在函數(shù)的使用前聲明了函數(shù)但是為什么還是報錯?

#include<reg51.h>

#define unchar unsigned char
#define unint unsigned int
unchar code_table[6]="ESJIAN";              //少了兩逗號
unchar code_table2[]="擺爛";     //一個中文兩個字節(jié)存儲

sbit LCDE =P2^7;
sbit RS=P2^6;
sbit RW=P2^5;

void delayms();
void lcd_control();      //例程上此處未加入中括號,思考是否可以
void lcd_data();
void lcd_init();         //此處漏掉逗號導致一堆報錯





void main()            //最好不要用uchar main
{
    unint num;         
          lcd_init();        
          lcd_control(0X80);     // 'lcd_control': requires ANSI-style prototype:在上一行不該傳參的函數(shù)傳參
    for(num=0;num<=5;num++)
    {
                        lcd_data(code_table[num]);   //字符數(shù)組的索引方式為此
      delayms(5);
    }
    for(num=0;num<8;num++)
    {
        lcd_data(code_table2[num]);
        delayms(5);
    }
}

void delayms(unint z)                  //創(chuàng)建延遲函數(shù),以ms為步進單位
{
        unint x,y;                         //此處不能重定義傳入變量
    for ( x = z; x>0 ; x--)
    {
        for(y=110;y>0;y--);
    }

}
void lcd_control(unchar com)
{
        RS=0;
        P0=com;
        delayms(5);
        LCDE=1;
        delayms(5);
        LCDE=0;

}
        void lcd_data(unchar datad[])   // syntax error near 'void', expected '__asm':上一行少打括號
{
    RS=1;
    P0=datad;
    delayms(5);
    LCDE=1;
    delayms(5);
    LCDE=0;    //執(zhí)行完該執(zhí)行的之后,進入函數(shù)前的寄存器是什么狀態(tài),那么我們就是什么狀態(tài)
}

void lcd_init()
{
    LCDE=0;             //使能低電平,激活LCD接收數(shù)據(jù)或者命令的初始狀態(tài)
    lcd_control(0x38);
    lcd_control(0x0c);
    lcd_control(0x06);
    lcd_control(0x01);  //顯示初始化函數(shù)
}


作者: ESJIAN    時間: 2024-3-14 22:56
好像函數(shù)重定義那塊出了問題.....
作者: Hephaestus    時間: 2024-3-15 00:43
你聲明的函數(shù)原型跟你使用的函數(shù)不一樣!
作者: ESJIAN    時間: 2024-3-15 17:49
Hephaestus 發(fā)表于 2024-3-15 00:43
你聲明的函數(shù)原型跟你使用的函數(shù)不一樣!

除了聲明時候沒有說明傳參類型哪里還不一樣啊?我以前也是這么寫的也沒報錯啊
作者: ESJIAN    時間: 2024-3-15 19:27
Hephaestus 發(fā)表于 2024-3-15 00:43
你聲明的函數(shù)原型跟你使用的函數(shù)不一樣!

哦,我后面在聲明時候補全了是否需要傳入?yún)?shù)以及傳參的類型,報錯消失了,C89對于這塊這么嚴格么




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1