Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La opción del compilador/Zc:externC indica al compilador que se ajuste al estándar de C++ y aplique las declaraciones de parámetro coherentes para las funciones declaradas como extern "C".
Sintaxis
/Zc:externC
/Zc:externC-
Comentarios
La opción del compilador /Zc:externC comprueba las definiciones de las funciones declaradas mediante extern "C".
La opción /Zc:externC está disponible a partir de la versión 16.3 de Visual Studio 2019. Está desactivado cuando no se establece la opción /permissive-. En versiones anteriores de Visual Studio, y de manera predeterminada o si se especifica /Zc:externC-, Visual Studio es permisivo respecto a la coincidencia de las declaraciones de funciones extern "C". La opción /permissive- habilita /Zc:externC, por lo que está activada de forma predeterminada en los proyectos que usan /std:c++20 o /std:c++latest. La opción /Zc:externC debe aparecer después de una opción /permissive- en la línea de comandos.
Las declaraciones no coincidentes extern "C" pueden provocar los errores del compilador C2116 y C2733. En el código de C++, se puede producir un error si declara más de una función extern "C" y usa diferentes tipos de parámetros, incluso si los tipos tienen las mismas definiciones. La opción /Zc:externC- facilita esta comprobación y no produce estos errores.
Para establecer esta opción del compilador en Visual Studio
Abra el cuadro de diálogo Páginas de propiedades del proyecto. Para más información, vea Establecimiento del compilador de C++ y de propiedades de compilación en Visual Studio.
Seleccione la página de propiedades Propiedades de configuración>C/C++>Línea de comandos.
Agregue
/Zc:externCo/Zc:externC-al panel Opciones adicionales.