C++でC言語内の変数をC++に変換して使う方法

[戻る]
もふ 2008/02/14(木) 10:43:58
いつも参考にさせて頂いています。

VC++から 必要なCファイルのみを、extern "C"を使用してCのファイルを
インクルードを行う方法で作成しています。
そこで、C言語ファイル内で必要な変数(独自のライブラリとリンクしたいので)
だけをC++として使用したいのですが、
下記以外にも変更する方法はあるのでしょうか?

宜しくお願いいたします。


main.cppファイル内

#ifdef __cplusplus
extern "C" {
#endif

#include "mogemoge.c"
#include "hogehoge.c"

#ifdef __cplusplus
}
#endif


hogehoge.cファイル内

unsigned long timer ;

#ifdef __cplusplus
}
#endif
// ここからC++

char c;

unsigned int i;

// ここまで C++
#ifdef __cplusplus
extern "C" {
#endif

通りすがり 2008/02/14(木) 11:13:33
大体の場合、extern "C"って関数の名前がC++のように複雑にならないように指定するも
のでは?
変数しか使わないなら、あってもなくても変わらなくないですか?
実際にコンパイル、ビルドして違いや不都合があったのでしょうか?

もふ 2008/02/14(木) 11:44:09
[[解決]]
おお。なるほど。確かにそうですね。

私の勘違いでした。ありがとうございました。

古いスレッドには追加発言できません。