Поделиться через


Предупреждение компилятора (уровень 1) C4162

"идентификатор" : функция без найденной компоновки C

Функция с компоновкой C объявлена, но не найдена.

Чтобы устранить это предупреждение, выполните компиляцию в C-файле (вызов компилятора C). Если необходимо вызвать компилятор C++, поместите экстерн "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);
}