C言語で作られたライブラリをC++で使う場合には注意が必要。
CとC++では関数名の内部表現が違う。
内部表現はコンパイラ後の名前みたいなものか。
これがCとC++で違うってことはコンパイル後にお互いがわからなくなるのか。
これを解決するのがextern "言語名"
C言語で作られた関数を呼ぶとして、extern"C"をその関数のプロトタイプの先頭につける。自身の言語を主張する感じ。
逆にC++の関数はC言語で呼び出せない。
ただし、C++でextern"C" とつけた関数はよびだせる。
extern"C" はブロックで関数プロトタイプをまとめられる。
ここまで。