2017-02-12 50 views
1

我一直在MPLAB 8.83 IDE,當我試圖建立它不停地顯示以下信息代碼:MPLAB 8.83 IDE編譯錯誤

「C:/程序文件(x86)/芯片/ MPLAB c30/bin/bin /../../ lib \ libpic30-coff.a(crt0_standard.o)(.init + 0x1a):crt0_standard.s:未定義的引用'main'c:/ program files(x86)/ microchip/mplab c30/bin/bin /../../ lib \ libpic30-coff.a(crt0_standard.o)(.init + 0x1c):crt0_standard.s:未定義引用'main'鏈接步驟失敗。「

這是爲什麼,以及如何避免它?

+2

您的代碼顯然是缺少'main'功能。 – tofro

回答

0

錯誤 - 「未定義參照‘主’」

該錯誤指示「主」未在代碼中定義。

當創建「C」代碼,需要這些元件以確保適當的編程操作和執行: Ö啓動代碼(crt0_standard.o)來初始化和明確的變量,設置寄存器和處理器 OA的主要功能 o重置需要處理的條件

標識符'main'是特殊的。這是必須的,並且是在程序中執行的第一個功能。 您必須在代碼中定義一個且只有一個「主」功能。 但是,與'main'關聯的代碼不是復位後執行的第一個代碼。 由編譯器提供的附加代碼(稱爲運行時啓動代碼)首先被執行,並負責將控制轉移到'main()'函數。 應該用於'main()'的原型如下。

int main(void); 

在XC16主要定義是:

#include <xc.h> 

int main() 
{ 
    /* Perform Firwware tasks here */ 
    return 0; 
}