chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【編譯問(wèn)題】很詭異的編譯報(bào)錯(cuò)expected declaration or statement at end of input

嵌入式物聯(lián)網(wǎng)開(kāi)發(fā) ? 來(lái)源:嵌入式物聯(lián)網(wǎng)開(kāi)發(fā) ? 作者:嵌入式物聯(lián)網(wǎng)開(kāi)發(fā) ? 2022-12-07 08:58 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

**【C語(yǔ)言進(jìn)階】很詭異的編譯報(bào)錯(cuò)expected declaration or statement at end of input **

一個(gè)很詭異的編譯報(bào)錯(cuò),不仔細(xì)還真發(fā)現(xiàn)不了!

1 問(wèn)題現(xiàn)場(chǎng)

有一天我在調(diào)試代碼的時(shí)候,剛剛代碼還好好的,突然來(lái)了一個(gè)報(bào)錯(cuò):

recan@ubuntu:~/11111$ gcc -o test 111/222/333/444/555/666/777/888/999/test.c 
 111/222/333/444/555/666/777/888/999/test.c: In function ‘test3’:
 111/222/333/444/555/666/777/888/999/test.c:37:1: error: expected declaration or statement at end of input
    37 | }
       | ^

這就讓我很納悶,咋回事呢?

2 復(fù)現(xiàn)代碼

我們來(lái)看下當(dāng)時(shí)的代碼,為了說(shuō)明問(wèn)題,我把無(wú)關(guān)代碼都刪除了,僅保留有效代碼:

?
 #include 
 ?
 int test1(void)
 {
 return 0;
 }
 ?
 int test2(void)
 {
 return 0;
 }
 ?
 ?
 int test3(void)
 {
 return 0;
 ?
 ?
 int test4(void)
 {
 return 0;
 }
 ?
 ?
 int test5(void)
 {
 return 0;
 }
 ?
 ?
 int main(void)
 {
     printf("__FILE__: %s\\n", __FILE__);
 return 0;
 }
 ?

示例代碼很簡(jiǎn)單,就是一堆的函數(shù),然后啥也沒(méi)干。

3 編譯分析

**根據(jù)編譯報(bào)錯(cuò),我們看下,提示 **line37行 報(bào)錯(cuò)了? 37行不是文件的結(jié)束嗎?

**報(bào)錯(cuò)的英文對(duì)應(yīng)的中文含義是:**錯(cuò)誤:輸入末尾應(yīng)為聲明或語(yǔ)句

很顯然不是37行有問(wèn)題嗎?我的main函數(shù)肯定沒(méi)有問(wèn)題???

那么有沒(méi)有可能是前面的函數(shù)有問(wèn)題?。?/strong>

**原來(lái)是 line16 中的test3函數(shù),少了結(jié)尾的 **} 大括號(hào),導(dǎo)致了編譯報(bào)錯(cuò)的蔓延。

當(dāng)然,解決這個(gè)編譯問(wèn)題也很簡(jiǎn)單,把test函數(shù)的大括號(hào)補(bǔ)上即可。

4 小小總結(jié)

  • 排查編譯問(wèn)題,不要僅局限于報(bào)錯(cuò)的行號(hào),找找上下文,可能別人的錯(cuò)誤導(dǎo)致了你的錯(cuò)誤;
  • **誤刪一行 **} 大括號(hào),不經(jīng)意間就報(bào)錯(cuò)了;
  • 代碼管理,一定要用起來(lái);這種情況,實(shí)在不行就比對(duì)下代碼,很容易就發(fā)現(xiàn)問(wèn)題了。

5 更多分享

[架構(gòu)師李肯]

架構(gòu)師李肯全網(wǎng)同名 ),一個(gè)專注于嵌入式IoT領(lǐng)域的架構(gòu)師。有著近10年的嵌入式一線開(kāi)發(fā)經(jīng)驗(yàn),深耕IoT領(lǐng)域多年,熟知IoT領(lǐng)域的業(yè)務(wù)發(fā)展,深度掌握IoT領(lǐng)域的相關(guān)技術(shù)棧,包括但不限于主流RTOS內(nèi)核的實(shí)現(xiàn)及其移植、硬件驅(qū)動(dòng)移植開(kāi)發(fā)、網(wǎng)絡(luò)通訊協(xié)議開(kāi)發(fā)、編譯構(gòu)建原理及其實(shí)現(xiàn)、底層匯編及編譯原理、編譯優(yōu)化及代碼重構(gòu)、主流IoT云平臺(tái)的對(duì)接、嵌入式IoT系統(tǒng)的架構(gòu)設(shè)計(jì)等等。擁有多項(xiàng)IoT領(lǐng)域的發(fā)明專利,熱衷于技術(shù)分享,有多年撰寫技術(shù)博客的經(jīng)驗(yàn)積累,連續(xù)多月獲得RT-Thread官方技術(shù)社區(qū)原創(chuàng)技術(shù)博文優(yōu)秀獎(jiǎng),榮獲[CSDN博客專家]、[CSDN物聯(lián)網(wǎng)領(lǐng)域優(yōu)質(zhì)創(chuàng)作者]、[2021年度CSDN&RT-Thread技術(shù)社區(qū)之星]、[2022年RT-Thread全球技術(shù)大會(huì)講師]、[RT-Thread官方嵌入式開(kāi)源社區(qū)認(rèn)證專家]、[RT-Thread 2021年度論壇之星TOP4]、[華為云云享專家(嵌入式物聯(lián)網(wǎng)架構(gòu)設(shè)計(jì)師)]等榮譽(yù)。堅(jiān)信【知識(shí)改變命運(yùn),技術(shù)改變世界】!

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    183

    文章

    7634

    瀏覽量

    143916
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    682

    瀏覽量

    34774
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1496

    瀏覽量

    43514
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RX231系列MCU舊工程打開(kāi)編譯報(bào)錯(cuò)問(wèn)題解決方法

    RX231系列MCU舊工程打開(kāi)編譯報(bào)錯(cuò),使用新版本為Renesas e2 studio,Version: 2023-04 (23.4.0)
    的頭像 發(fā)表于 01-03 12:32 ?2244次閱讀
    RX231系列MCU舊工程打開(kāi)<b class='flag-5'>編譯</b><b class='flag-5'>報(bào)錯(cuò)</b>問(wèn)題解決方法

    編譯例程pipeline_bt_source失敗怎么解決?

    編譯其他ADF庫(kù)里的例程沒(méi)有問(wèn)題,就這個(gè)會(huì)出錯(cuò),初步分析是ADF庫(kù)里調(diào)用了IDF庫(kù)的函數(shù),但是找不到,不知道要怎么將它們關(guān)聯(lián)起來(lái),以下是編譯報(bào)告: C:/Users/HUANG/esp
    發(fā)表于 06-28 06:38

    STM32CUBEIDE編譯報(bào)error: expected identifier or \'(\' before \'__asm\'怎么解決?

    specific defines / 編譯報(bào)錯(cuò)日志需要如何解決 ../Drivers/CMSIS/Include/cmsis_armcc.h:58:50: error: expected
    發(fā)表于 03-07 08:16

    mplab編程C,程序編譯不出來(lái)

    declaration specifiers before 'main'interrupts.c:43:1: error: expected '{' at end of input
    發(fā)表于 08-05 15:17

    DSP2812 ccs3.3編譯報(bào)錯(cuò)At end of source: error: expected a "}",但實(shí)際上沒(méi)少“}”

    急救,請(qǐng)諸位大神解疑釋難:采用DSP2812,在 ccs3.3環(huán)境下編譯報(bào)錯(cuò)At end of source: error: expected a "}",但實(shí)際上沒(méi)少“}”
    發(fā)表于 06-21 11:49

    DSP2812在ccs3.3環(huán)境下報(bào)錯(cuò)At end of source: error: expected a "}",但實(shí)際上沒(méi)少“}”

    急救,請(qǐng)諸位大神解疑釋難:采用DSP2812,在 ccs3.3環(huán)境下編譯報(bào)錯(cuò)At end of source: error: expected a "}",但實(shí)際上沒(méi)少“}”
    發(fā)表于 06-21 11:55

    CC3200 應(yīng)用示例中編譯報(bào)錯(cuò)

    CC3200 應(yīng)用示例中 wlan_station_Release編譯報(bào)錯(cuò)“OSI_OK,” expected an identifier在枚舉定義時(shí)報(bào)錯(cuò)
    發(fā)表于 03-22 13:50

    請(qǐng)問(wèn)數(shù)組定義報(bào)錯(cuò):#19 extra text after expected end of number是什么原因造成的?如何解決?

    本帖最后由 一只耳朵怪 于 2018-6-14 08:48 編輯 我用CCS6.0定義了一個(gè)數(shù)組,編譯時(shí)報(bào)這個(gè)錯(cuò)誤:#19 extra text after expected end
    發(fā)表于 06-13 07:03

    進(jìn)入buildroot-2016.11手動(dòng)編譯 make 全部包提示 libgpgme-1.7.1 包無(wú)法編譯通過(guò)是為什么?

    ',' or ';' before '{' token{^context.cpp:1645:1: error: expected '}' at end of input}^make[6
    發(fā)表于 01-13 08:47

    吳鑒鷹總結(jié)的Keil編譯常見(jiàn)問(wèn)題(一)

    吳鑒鷹總結(jié)的Keil編譯常見(jiàn)問(wèn)題,例如:.error: #18: 6.error: #18: expected a ")" 如果是出現(xiàn)在c 文件中 多半是因?yàn)樯倭艘粋€(gè)")"或者錯(cuò)誤行有編譯器不識(shí)別的字符 如果出現(xiàn)在頭文件中
    發(fā)表于 07-22 15:31 ?0次下載

    IAR編譯問(wèn)題

    的,就好比組1有.h文件但是組2 沒(méi)有然后編譯就會(huì)報(bào)錯(cuò)。解決辦法就是將相關(guān).h文件復(fù)制到相關(guān)的所有文件夾里面問(wèn)題二:修改好了編譯沒(méi)報(bào)錯(cuò),調(diào)試的時(shí)候不能單步運(yùn)行,也打不了斷點(diǎn),這時(shí)候需要
    發(fā)表于 12-03 10:36 ?8次下載
    IAR<b class='flag-5'>編譯</b>問(wèn)題

    CCS編譯器 報(bào) error: expected a “)“ 的錯(cuò)誤

    使用CCS 進(jìn)行m430f5529的開(kāi)發(fā)過(guò)程中,編譯器報(bào)error: expected a “)” 的錯(cuò)誤。當(dāng)時(shí)以為是自己少了括號(hào),但是認(rèn)真檢查后發(fā)現(xiàn)無(wú)誤,經(jīng)過(guò)反復(fù)的嘗試,發(fā)現(xiàn)只要函數(shù)的輸入?yún)?shù)為N
    發(fā)表于 12-16 16:56 ?14次下載
    CCS<b class='flag-5'>編譯</b>器 報(bào) error: <b class='flag-5'>expected</b> a “)“ 的錯(cuò)誤

    error:expected identifier before ‘(‘ token,結(jié)構(gòu)體指針宏定義錯(cuò)誤

    error:expected identifier before ‘(’ token,結(jié)構(gòu)體指針宏定義錯(cuò)誤編譯時(shí)彈出標(biāo)題所示錯(cuò)誤,一般為宏定義里有與其他地方重復(fù)的常量符號(hào)。找出名字重復(fù)的符號(hào)并修改
    發(fā)表于 01-13 15:42 ?11次下載
    error:<b class='flag-5'>expected</b> identifier before ‘(‘ token,結(jié)構(gòu)體指針宏定義錯(cuò)誤

    VScode編譯器如何配置C/C++編譯環(huán)境

    昨天有伙伴私信我,為什么我用C語(yǔ)言寫的hello world幾行代碼,在編譯器里面報(bào)錯(cuò)了呢?
    的頭像 發(fā)表于 03-16 08:38 ?7045次閱讀

    【GCC編譯運(yùn)行報(bào)錯(cuò)】error while loading

    【GCC編譯】運(yùn)行編譯后的程序報(bào)錯(cuò) error while loading shared libraries: lib*.so: cannot open shared object file
    的頭像 發(fā)表于 08-26 13:14 ?8385次閱讀
    【GCC<b class='flag-5'>編譯</b>運(yùn)行<b class='flag-5'>報(bào)錯(cuò)</b>】error while loading