首頁 >後端開發 >C++ >如何從 C 程式碼成功呼叫 C 函數?

如何從 C 程式碼成功呼叫 C 函數?

Barbara Streisand
Barbara Streisand原創
2024-11-24 07:51:11602瀏覽

How to Successfully Call a C Function from C   Code?

從C 程式碼呼叫C 函數

從C 呼叫C 函數可能會帶來挑戰,特別是如果「extern "C" void foo()」方法由於失敗而失敗g 的編譯問題。為了解決這個問題,提出了一個不同的策略:

編譯:

  1. 編譯C 程式碼:

    gcc -c -o somecode.o somecode.c
  2. 編譯C程式碼:

    g++ -c -o othercode.o othercode.cpp

連結:

使用C 連結器將編譯後的檔案連結在一起:

g++ -o yourprogram somecode.o othercode.o

標題包含:

通知包含C 頭檔的C 編譯器,使用下列內容更新othercode.cpp 檔案:

extern "C" {
#include "somecode.h"
}

somecode.h 頭檔案:

建立頭文件檔案(somecode.h)來聲明C函數:

#ifndef SOMECODE_H_
#define SOMECODE_H_

void foo();

#endif

註:

此方法將編譯分為 C 和 C 階段,然後進行連結。編譯器(本例為 gcc)的選擇很靈活,但原理是一樣的。

以上是如何從 C 程式碼成功呼叫 C 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn