Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Параметр /Zc:externC компилятора сообщает компилятору соответствовать стандарту C++ и применять согласованные объявления параметров для функций, объявленных как extern "C".
Синтаксис
/Zc:externC
/Zc:externC-
Замечания
Параметр /Zc:externC компилятора проверяет определения функций, объявленных с помощью extern "C".
Этот /Zc:externC параметр доступен начиная с Visual Studio 2019 версии 16.3. Он отключен, если /permissive- параметр не задан. В более ранних версиях Visual Studio и по умолчанию или /Zc:externC- при указании Visual Studio не соответствует объявлениям extern "C" функций. Параметр /permissive- включает /Zc:externC, поэтому он включен по умолчанию в проектах, использующих /std:c++20 или /std:c++latest. Этот /Zc:externC параметр должен прийти после /permissive- параметра в командной строке.
Несогласованные extern "C" объявления могут привести к ошибкам компилятора C2116 и C2733. В коде C++ может возникнуть ошибка, если вы объявляете extern "C" функцию более одного раза и используете разные типы параметров, даже если типы имеют одинаковые определения. Параметр /Zc:externC- смягчает эту проверку и не создает эти ошибки.
Установка параметра компилятора в Visual Studio
Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.
Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.
Добавьте
/Zc:externCили/Zc:externC-в область "Дополнительные параметры".