コンパイラの警告 (レベル 1) C4162
'identifier' : C リンケージを伴う関数が見つかりません
C リンケージを持つ関数は宣言されていますが、見つかりません。
この警告を解決するには、.c ファイルでコンパイルします (C コンパイラを呼び出します)。 C++ コンパイラを呼び出す必要がある場合は、関数宣言の前に extern "C" を配置します。
次の例では C4162 が生成されます
// C4162.cpp
// compile with: /c /W1
unsigned char _bittest(long* a, long b);
#pragma intrinsic (_bittest) // C4162
int main() {
bool bit;
long num = 78002;
bit = _bittest(&num, 5);
}
考えられる解決方法:
// C4162b.cpp
// compile with: /c
extern "C"
unsigned char _bittest(long* a, long b);
#pragma intrinsic (_bittest)
int main() {
bool bit;
long num = 78002;
bit = _bittest(&num, 5);
}