Tecnología

Inicio

¿Qué son útiles Banderas del compilador C +?

C ++ es un lenguaje de programación compilado sistemas utilizados para construir diversas aplicaciones y sistemas operativos. Cuando un programador escribe un programa en C ++, ella debe "compilar" el programa a través de un compilador para que una máquina realmente puede ejecutarlo. Uno de estos compiladores, g ++, contiene muchas opciones (llamadas "banderas") que el programador puede utilizar cuando se compila el programa para optimizar el proceso de compilación.

Cómo utilizar las opciones del compilador

Cuando se invoca el compilador g ++ para compilar el código fuente en C ++, el programador llama al compilador g ++, seguido del nombre del archivo fuente. Por ejemplo, si el programador desea compilar un archivo fuente de C ++ llamado "test.cpp", entonces sería compilar desde la línea de comandos como en el siguiente ejemplo:

g ++ test.cpp

Cualquier opciones del compilador se producirá antes o después del nombre del archivo compilado, precedido por un guión ( "-").

La bandera "-c"

Cuando g ++ compila un archivo, se crea un archivo ejecutable. Esto significa que un usuario puede simplemente "ejecutar" el archivo, ya sea haciendo doble clic en él o sin embargo la ejecución funciona para ese sistema operativo en particular. En el lenguaje de la compilación, esto significa que el archivo fue tanto "compilado" y "unido" a las bibliotecas de código necesarias. Mediante el uso de la bandera "-c", como en el siguiente ejemplo, g ++ creará un archivo de objeto "a.out", que no es ejecutable, pero listo para la vinculación con otras bibliotecas y archivos de código fuente en un proyecto más amplio:

g ++ -c test.cpp

El comando "-o"

Al compilar un archivo fuente, el compilador g ++ crea un archivo predeterminado, ya sea llamado "a.out" o "original_file_name.o". Por ejemplo, la compilación "test.cpp" crea el "test.o" archivo. Mediante el uso de la "-o" bandera, el programador puede hacer que el compilador crea un archivo con un nombre diferente. Por ejemplo, el siguiente comando compila "test.cpp" en "test_result.o":

g ++ -o test_result.o test.cpp

La bandera "-Wall"

C ++ es un lenguaje sintácticamente compleja y, a menudo puede conducir a los programadores a desarrollar código complicado y difícil de depurar. Incluso si una sección de código C ++ puede ser sintácticamente correcto, puede conducir a errores durante la ejecución que son difíciles de encontrar, debido a la complejidad del programa. Por lo tanto, los programadores pueden utilizar la bandera "-Wall" en g ++ para ayudar a buscar a estos insectos. El código y los controles bandera "-Wall" plantea advertencias si el código puede inducir un error. Incluso si el código es sintácticamente correcta, la bandera "-Wall" forzará al compilador para advertir acerca de las líneas sospechosas de código que pueden causar problemas durante la ejecución.