Red de conocimiento del abogados - Preguntas y respuestas jurídicas - ¿Qué muestra el mensaje de error de compilación cuando aparecen símbolos chinos?

¿Qué muestra el mensaje de error de compilación cuando aparecen símbolos chinos?

Copyright ? 1999-2020, CSDN.NET, Todos los derechos reservados

Abrir aplicación

System_sleep

Seguir

Los errores de compilación y los problemas de impresión confusos causados ​​por el contenido chino en el código VS2019 son originales

2022-06-25 17:45:47 2 me gusta

System_sleep?

11 años de experiencia en codificación

Atención

Prólogo

En VS2019, si el código contiene definiciones o comentarios de cadenas en chino, se producirán varios problemas. Errores de compilación inexplicables, incluso si tiene suerte y compila sin errores, aún encontrará el problema de los caracteres chinos confusos impresos en la consola, lo que irrita mucho a la gente.

Problemas de compilación

1. Las constantes de cadena chinas se definen en el código, lo que provoca errores de compilación: "Hay un carácter de nueva línea en la constante"

2; El código contiene comentarios en chino que provocan errores de compilación: no se puede encontrar XXX (macro, variable), XXX no es una constante/variable y otros problemas causados ​​por la declaración que no se encuentra;

Imprime caracteres confusos<. /p>

Código Al imprimir cadenas en chino, la salida en el símbolo del sistema es confusa;

Solución, elija uno de tres métodos:

1. a UTF-8 con firma, lo que permite que el compilador MSVC reconozca y cargue automáticamente el archivo en formato BOM utf-8:

Utilice un editor externo para guardar el archivo de código en formato BOM utf8;

o abra el archivo de código, seleccione el formato de guardado del archivo de código como "Unicode con firma" en VS2019 "Opciones avanzadas de guardado"

2. p>Modifique las cadenas chinas y el formato de los comentarios chinos, agregue un espacio en inglés al final del chino, para que el compilador MSVC pueda cargar y compilar cadenas codificadas en chino utf-8 en codificación GBK, lo que puede resolver el problema del error de compilación y la impresión. todavía está confuso;

3. Obligatorio Especifique el formato de codificación del archivo de código cargado por el compilador MSVC:

En VS2019 "Proyecto" - cuadro de diálogo "Propiedades del proyecto" - "C /C" - subpágina "Todas las opciones", en "Opciones adicionales" Agregue "/utf-8" (equivalente a "/source-charset: utf-8 /execution-charset: utf-8");

En el cuadro de diálogo "Proyecto" - "Propiedades del proyecto" de VS2019 - subpágina "C/C" - "Todas las opciones", agregue "/source-charset: utf-8 /execution-charset: gbk" en "Opciones adicionales" (El primero representa la codificación del archivo en sí, el segundo representa la codificación después de la compilación. ¿Qué codificación son los bytes en la matriz de caracteres?

Resumen:

1. para un nuevo proyecto, el método recomendado es unificar todos los archivos de código nuevos en el formato BOM utf-8

2. Si se trata de un código multiplataforma y el archivo contiene algunos comentarios en chino, puede probar el método. 2;

3. Si se trata de un proyecto complejo histórico existente (que no utiliza herramientas de solución exportada), puede probar el método tres, pero debe prestar atención a los requisitos de codificación de cadenas tanto para la visualización como para la impresión de la interfaz de usuario. (que puede ser inconsistente) al configurar el conjunto de caracteres de ejecución;