標(biāo)題: error C267:: requires ANSI-style prototype這個(gè)是什么意思? [打印本頁]

作者: aaaakk.    時(shí)間: 2020-4-29 22:01
標(biāo)題: error C267:: requires ANSI-style prototype這個(gè)是什么意思?
求助Keil編碼錯(cuò)誤
error C267: 'lcd_write_com': requires ANSI-style prototype



請(qǐng)問Keil軟件出現(xiàn)這個(gè)錯(cuò)誤什么意思。吭趺锤哪


作者: benclee    時(shí)間: 2020-4-30 08:07
看一下lcd_write_com這個(gè)函數(shù)有沒有聲明,定義。
作者: carpcarey    時(shí)間: 2020-4-30 08:40
你函數(shù)原型在調(diào)用函數(shù)之后。一種辦法是你將lcd_write_com這個(gè)函數(shù)移動(dòng)到你調(diào)用的函數(shù)之前,另一種辦法就是在最前面聲明或頭文件聲明。
作者: 黃youhui    時(shí)間: 2020-4-30 09:00
它說你的函數(shù)不標(biāo)準(zhǔn),這的看原型和調(diào)用
作者: xxpp2011    時(shí)間: 2020-4-30 10:51
函數(shù)未定義或未聲明調(diào)用
作者: wanghz12    時(shí)間: 2020-4-30 11:17
先聲明再使用
作者: zlf1508383    時(shí)間: 2020-4-30 12:05
在實(shí)現(xiàn)lcd_write_com這個(gè)函數(shù)的.c文件對(duì)應(yīng)的.h文件加上函數(shù)聲明,再在你調(diào)用的地方include這個(gè).h文件,另外檢查一下函數(shù)定義、聲明、調(diào)用傳參個(gè)數(shù)、類型是否一致。
作者: 歐冶泰輝    時(shí)間: 2020-4-30 12:24
是不是沒聲明
作者: piliming    時(shí)間: 2020-4-30 14:05
要把調(diào)用的子函數(shù)lcd_write_com放到main前面,或者在main前面先定義(聲明)一下
作者: lzw1997    時(shí)間: 2020-4-30 14:10
函數(shù)沒有申明,如果申明了看看是不是參數(shù)問題,比如你調(diào)用時(shí)本來函數(shù)沒有參數(shù)你給了參數(shù)
作者: zz177    時(shí)間: 2021-5-15 10:28
需要函數(shù)聲明
作者: 氧離子di    時(shí)間: 2021-7-14 15:02
看看調(diào)用的函數(shù)名有沒有打錯(cuò)
作者: shumivan    時(shí)間: 2021-7-15 13:54
先關(guān)鍵檢查是否正確聲明,如果還不行,那就是keil編碼設(shè)置錯(cuò)誤了
作者: 豬八戒2179    時(shí)間: 2021-12-20 16:53
是不是應(yīng)當(dāng)把錯(cuò)誤代碼帖出來 大家看看
作者: akesking    時(shí)間: 2021-12-21 14:48
write_data()這個(gè)函數(shù)還沒有聲明過,你就直接調(diào)用了。   Keil采用的是C89標(biāo)準(zhǔn),無聲明無定義的函數(shù)會(huì)報(bào)錯(cuò)的。你應(yīng)當(dāng):  將write_data()函數(shù)體挪動(dòng)到所有調(diào)用它的函數(shù)之前(先讓編譯器看看:我有這個(gè)東西;之后再調(diào)用它,編譯器自然就閉嘴了);  或者養(yǎng)成規(guī)范編程的習(xí)慣,在最前面放好每個(gè)函數(shù)的原型聲明(告訴編譯器:我會(huì)用到一個(gè)這樣的函數(shù),你別嘰嘰歪歪)
作者: Qiuhan    時(shí)間: 2021-12-26 17:19
可能是說你的函數(shù)命名不符合規(guī)范,或者說頭文件和define沖突之類的 也可能是代碼位置的問題
作者: xcb6666    時(shí)間: 2021-12-27 20:38
要先聲明的呀
作者: Chodimasker    時(shí)間: 2022-2-20 10:16
雖然說是聲明問題,但是有一種情況仍然會(huì)導(dǎo)致這個(gè)問題的出現(xiàn)
就是你一開始在打開這個(gè)文件(模塊化編程)的時(shí)候,是打開其他文件夾里面的文件,然后在復(fù)制過來工程文件夾
此時(shí)在keil中修改的文件是另外文件夾的文件,而實(shí)際讀取操作的文件是工程文件夾中未修改的文件
解決方法是copy修改完的文件到工程文件夾,然后再將該模塊的文件刪除并重新添加工程文件夾中的文件
作者: QQ900    時(shí)間: 2022-8-17 13:48
函數(shù)未調(diào)用(定義)
作者: zilihangjian    時(shí)間: 2022-8-19 20:07
要么放在main前面,放在后面就要對(duì)函數(shù)聲明,定義。
作者: aide51    時(shí)間: 2022-8-20 21:56
函數(shù)未定義或未聲明調(diào)用,或者放在main前面
作者: 陰間大男孩    時(shí)間: 2024-12-10 21:17
發(fā)表于 2020-4-30 08:40
你函數(shù)原型在調(diào)用函數(shù)之后。一種辦法是你將lcd_write_com這個(gè)函數(shù)移動(dòng)到你調(diào)用的函數(shù)之前,另一種辦法就是 ...

正解

作者: barbed    時(shí)間: 2024-12-16 16:26
這是由于函數(shù)原型聲明的問題導(dǎo)致的編譯錯(cuò)誤
作者: zzzzzzzt    時(shí)間: 2025-2-9 00:37
Chodimasker 發(fā)表于 2022-2-20 10:16
雖然說是聲明問題,但是有一種情況仍然會(huì)導(dǎo)致這個(gè)問題的出現(xiàn)
就是你一開始在打開這個(gè)文件(模塊化編程)的 ...

謝謝!我查了好久,發(fā)現(xiàn)是這個(gè)問題




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