BohYoh.comトップページへ
C & C++ FAQ
目次

C++ C++からC関数を呼び出すにはどうすればよいですか。

 C言語で定義された関数はC結合(Cリンケージ)を、C++言語で定義された関数はC++結合(C++リンケージ)を持ちます。
 C++言語のプログラムで、C言語の関数を呼び出す場合は、その関数がC結合であることを事前に宣言しなければなりません。たとえば

extern "C" { void func(int x); double cp(double x, double y); }

と宣言しましょう。なお、ヘッダに関数原型(プロトタイプ)宣言が含まれているのであれば、インクルード指令を指定することができます。

extern "C" { #include "C-header1.h" #include "C-header2.h" }

こうすると、これらのヘッダ中に宣言されている全ての関数をC結合として宣言することできます。
戻る

BohYoh.comロゴ