[英]How to call a function from another file into main function in c?
我正在使用qt並創建了ac項目。 我已經創建了兩個文件,一個頭文件和一個源文件。 我已將函數聲明到頭文件中。 這樣我就可以從main函數調用它了。 但是,當我編譯並運行時,出現“未定義引用”錯誤。 如何解決這個問題? 我正在使用Qt 5.5 IDE。
我的代碼:
頭文件Chapter_1.h
#ifndef CHAPTER_1_H
#define CHAPTER_1_H
//include all header files
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
/* function declaration */
int sum(int x, int y);
#endif // CHAPTER_1_H
源文件
//include header files
#include "chapter_1.h"
int sum(int x, int y)
{
int result = x+y;
return result;
}
主文件:
#include "chapter_1.h"
int main()
{
sum(23, 23);
return 0;
}
這不是編譯器錯誤。 這是一個鏈接器錯誤。 您只需要將兩個源文件(main.cpp和Chapter1.cpp)都包含到您的項目中即可。
我解決了問題。 問題是,文件創建為.cpp。 現在,我將其更改為.c,但它沒有用。 謝謝大家。
您必須告訴qmake
哪些是要用於生成程序的源文件。 在項目文件( *.pro
)中定義了幾個變量,負責這些信息和其他信息。 SOURCES
定義要使用的源文件HEADERS
您猜到了標題。
HEADERS = chapter_1.h
SOURCES = main.cpp chapter_1.cpp
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.