Tutorial: Compilar un programa de C en la línea de comandos (2024)

  • Artículo

VisualStudio Build Tools incluye un compilador deC que puede usar para crear desde programas básicos de la consola hasta aplicaciones de escritorio de Windows completas, aplicaciones móviles y mucho más. MicrosoftC/C++ (MSVC) es un compilador deC yC++ que, en sus versiones más recientes, se ajusta a algunos de los estándares más recientes del lenguajeC, incluidos C11 y C17.

En este tutorial, aprenderá a crear un programa de consola de C básico de estilo "Hola mundo" con un editor de texto y, luego, lo compilará en la línea de comandos. Si prefiere trabajar en C++ en la línea de comandos, vea Tutorial: Compilar un programa nativo de C++ en la línea de comandos. Si quiere probar el IDE de Visual Studio en lugar de usar la línea de comandos, vea Tutorial: Trabajar con proyectos y soluciones (C++) o Usar el IDE de Visual Studio para el desarrollo de escritorio de C++.

Requisitos previos

Para completar este tutorial, debe tener instalado VisualStudio o Build Tools para VisualStudio, así como carga de trabajo opcional Desarrollo para el escritorio con C++.

VisualStudio es un eficaz entorno de desarrollo integrado que admite un editor con funciones completas, administradores de recursos, depuradores y compiladores para varios lenguajes y plataformas. Para obtener información sobre estas características y cómo descargar e instalar VisualStudio, incluida la edición gratuita de VisualStudio Community, consulte Instalar VisualStudio.

La versión de Build Tools para VisualStudio solo instala el conjunto de herramientas de línea de comandos, los compiladores, las herramientas y las bibliotecas que necesita para compilar programas de C y C++. Resulta perfecta para laboratorios de compilación o ejercicios en aulas, y se instala con relativa rapidez. Para instalar solo las herramientas de línea de comandos, descargue Build Tools para VisualStudio en la página de descargas de VisualStudio y ejecute el instalador. En el instalador de VisualStudio, seleccione la carga de trabajo Desarrollo para el escritorio con C++ (en versiones anteriores de VisualStudio, seleccione la carga de trabajo Herramientas de compilación de C++) y seleccione Instalar.

Cuando haya instalado las herramientas, existe otra herramienta que usará para compilar un programa de C o C++ en la línea de comandos. MSVC tiene requisitos complejos para que el entorno de línea de comandos busque las herramientas, los encabezados y las bibliotecas que usa. No se puede usar MSVC en una ventana del símbolo del sistema sin formato sin cierta preparación. Necesita una ventana del símbolo del sistema para desarrolladores, que es una ventana normal del símbolo del sistema que tiene configuradas todas las variables de entorno necesarias. Afortunadamente, VisualStudio instala accesos directos para que pueda iniciar símbolos del sistema para desarrolladores con el entorno configurado para compilaciones de línea de comandos. Desafortunadamente, los nombres de los accesos directos del símbolo del sistema para desarrolladores y dónde se encuentran son diferentes en casi todas las versiones de VisualStudio y en versiones diferentes de Windows. La primera tarea del tutorial consiste en encontrar el acceso directo adecuado que se va a usar.

Nota:

Un acceso directo del símbolo del sistema para desarrolladores establece automáticamente las rutas de acceso correctas para el compilador y las herramientas, y para los encabezados y las bibliotecas necesarios. Algunos de estos valores son diferentes para cada configuración de compilación. Debe establecer por su cuenta estos valores de entorno si no usa uno de los accesos directos. Para obtener más información, vea Usar el conjunto de herramientas de MSVC desde la línea de comandos. Dado que el entorno de compilación es complejo, se recomienda encarecidamente usar un acceso directo del símbolo del sistema para desarrolladores, en lugar de crear uno propio.

Estas instrucciones varían según la versión de VisualStudio que use. Para ver la documentación de su versión preferida de Visual Studio, use el control de selector Versión. Se encuentra en la parte superior de la tabla de contenido de esta página.

Apertura de un símbolo del sistema para desarrolladores en VisualStudio2022

Si ha instalado VisualStudio2022 en Windows10 o una versión posterior, abra el menú Inicio y elija Todas las aplicaciones. A continuación, desplácese hacia abajo y abra la carpeta VisualStudio 2022 (no la aplicación VisualStudio 2022). Elija Símbolo del sistema para desarrolladores de VS2022 para abrir la ventana del símbolo del sistema.

Apertura de un símbolo del sistema para desarrolladores en VisualStudio2019

Si ha instalado VisualStudio2019 en Windows10 o una versión posterior, abra el menú Inicio y elija Todas las aplicaciones. Después, desplácese hacia abajo y abra la carpeta VisualStudio 2019 (no la aplicación VisualStudio2019). Elija Símbolo del sistema para desarrolladores de VS2019 para abrir la ventana del símbolo del sistema.

Apertura de un símbolo del sistema para desarrolladores en VisualStudio2017

Si ha instalado VisualStudio2017 en Windows10 o una versión posterior, abra el menú Inicio y elija Todas las aplicaciones. Después, desplácese hacia abajo y abra la carpeta VisualStudio2017 (no la aplicación VisualStudio2017). Elija Símbolo del sistema para desarrolladores de VS2017 para abrir la ventana del símbolo del sistema.

Apertura de un símbolo del sistema para desarrolladores en VisualStudio2015

Si ha instalado MicrosoftVisual C++ Build Tools2015 en Windows10 o una versión posterior, abra el menú Inicio y elija Todas las aplicaciones. A continuación, desplácese hacia abajo y abra la carpeta VisualC++ Build Tools. Elija Símbolo del sistema de las herramientas nativas x86 de VisualC++2015 para abrir la ventana del símbolo del sistema.

Si usa una versión diferente de Windows, busque en el menú Inicio o en la página de inicio una carpeta de herramientas de VisualStudio que contenga un acceso directo del símbolo del sistema para desarrolladores. También puede usar la función de búsqueda de Windows para buscar "símbolo del sistema para desarrolladores" y elegir uno que coincida con la versión instalada de VisualStudio. Use el acceso directo para abrir la ventana del símbolo del sistema.

Después, compruebe que el símbolo del sistema para desarrolladores está configurado correctamente. En la ventana del símbolo del sistema, escriba cl (o CL; la distinción entre mayúsculas y minúsculas no importa en el nombre del compilador, pero sí en las opciones del compilador). El resultado deberá ser ahora similar a esto:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise>clMicrosoft (R) C/C++ Optimizing Compiler Version 19.10.25017 for x86Copyright (C) Microsoft Corporation. All rights reserved.usage: cl [ option... ] filename... [ /link linkoption... ]

Puede haber diferencias en el directorio o los números de versión actuales según la versión de VisualStudio y de las actualizaciones instaladas. Si la salida anterior es similar a lo que ve, está listo para compilar programas de C o C++ en la línea de comandos.

Nota:

Si recibe un error que indica que "'cl' no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable", un errorC1034 o un errorLNK1104 al ejecutar el comando cl, significa que no está usando un símbolo del sistema para desarrolladores o que hay algún problema con la instalación de VisualStudio. Debe corregir este error para poder continuar.

Si no encuentra el acceso directo del símbolo del sistema para desarrolladores, o si recibe un mensaje de error al escribir cl, es posible que la instalación de VisualStudio tenga un problema. Si usa VisualStudio2017 o una versión posterior, pruebe a instalar de nuevo la carga de trabajo Desarrollo para el escritorio con C++ en el instalador de VisualStudio. Para obtener más información, consulte Instalación de compatibilidad con C++ en VisualStudio. También puede volver a instalar Build Tools desde la página de descargas de VisualStudio. No pase a la sección siguiente hasta que el comando cl funcione. Para obtener más información sobre cómo instalar y solucionar problemas de VisualStudio, vea Instalación de VisualStudio.

Nota:

En función de la versión de Windows del equipo y de la configuración de seguridad del sistema, es posible que deba hacer clic con el botón derecho para abrir el menú contextual del acceso directo del símbolo del sistema para desarrolladores y, después, elegir Ejecutar como administrador para compilar y ejecutar correctamente el programa que se crea siguiendo este tutorial.

See Also
PSeInt

Creación de un archivo de código fuente de C y compilación en la línea de comandos

  1. En la ventana del símbolo del sistema para desarrolladores, escriba cd c:\ para cambiar el directorio de trabajo actual a la raíz de la unidad C:. Después, escriba md c:\hello para crear un directorio y cd c:\hello para cambiar a ese directorio. Este directorio contendrá el archivo de código fuente y el programa compilado.

  2. Escriba notepad hello.c en el símbolo del sistema para desarrolladores. En el cuadro de diálogo de alerta del Bloc de notas que aparece, elija para crear un archivo hello.c en el directorio de trabajo.

  3. En el Bloc de notas, escriba las líneas de código siguientes:

    #include <stdio.h>int main(){ printf("Hello, World! This is a native C program compiled on the command line.\n"); return 0;}
  4. En la barra de menús del Bloc de notas, elija Archivo >Guardar para guardar hello.c en el directorio de trabajo.

  5. Cambie a la ventana del símbolo del sistema para desarrolladores. Escriba dir en el símbolo del sistema para mostrar el contenido del directorio c:\hello. Debería ver el archivo de código fuente hello.c en la lista de directorios, con un aspecto similar al siguiente:

    C:\hello>dir Volume in drive C has no label. Volume Serial Number is CC62-6545 Directory of C:\hello10/02/2017 03:46 PM <DIR> .10/02/2017 03:46 PM <DIR> ..10/02/2017 03:36 PM 143 hello.c 1 File(s) 143 bytes 2 Dir(s) 514,900,566,016 bytes free

    Las fechas y otros detalles serán distintos en su equipo. Si no ve el archivo de código fuente hello.c, asegúrese de que ha cambiado al directorio c:\hello creado y, en el Bloc de notas, compruebe que ha guardado el archivo de código fuente en este directorio. Asegúrese también de que ha guardado el código fuente con una extensión de nombre de archivo .c, no una extensión .txt.

  6. Para compilar el programa, escriba cl hello.c en el símbolo del sistema para desarrolladores.

    Puede ver el nombre del programa ejecutable (hello.exe) en las líneas de información de salida que muestra el compilador:

    c:\hello>cl hello.cMicrosoft (R) C/C++ Optimizing Compiler Version 19.10.25017 for x86Copyright (C) Microsoft Corporation. All rights reserved.hello.cMicrosoft (R) Incremental Linker Version 14.10.25017.0Copyright (C) Microsoft Corporation. All rights reserved./out:hello.exehello.obj

    Nota:

    Si obtiene un error como "'cl' no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable", un error C1034 o un error LNK1104, el símbolo del sistema para desarrolladores no está correctamente configurado. Para obtener información sobre cómo corregir este problema, vuelva a la sección Apertura de un símbolo del sistema para desarrolladores.

    Si recibe otra advertencia o error del compilador o del enlazador, revise el código fuente para corregir los errores, guárdelo y vuelva a ejecutar el compilador. Para obtener información sobre errores específicos, use el cuadro de búsqueda de la parte superior de esta página para buscar el número de error.

  7. Para ejecutar el programa, escriba hello en el símbolo del sistema.

    El programa muestra este texto y, a continuación, se cierra:

    Hello, World! This is a native C program compiled on the command line.

    Enhorabuena, ha compilado y ejecutado un programa de C con la línea de comandos.

Pasos siguientes

Este ejemplo "Hola mundo" es el programa de C más básico que se puede crear. Los programas reales contienen archivos de encabezado y más archivos de código fuente, vinculan a bibliotecas y llevan a cabo un trabajo útil.

Puede seguir los pasos de este tutorial para crear su propio código de C, en lugar de escribir el del ejemplo que se muestra. También puede crear muchos programas de ejemplo de código de C que encontrará en otras partes. Para compilar un programa que tiene más archivos de código fuente, escríbalos todos en la línea de comandos, de esta forma:

cl file1.c file2.c file3.c

El compilador genera un programa llamado file1.exe. Para cambiar el nombre a program1.exe, agregue una opción de enlazador /out:

cl file1.c file2.c file3.c /link /out:program1.exe

Para detectar más errores de programación de forma automática, se recomienda compilar mediante la opción de nivel de advertencia /W3 o /W4:

cl /W4 file1.c file2.c file3.c /link /out:program1.exe

El compilador (cl.exe) tiene muchas más opciones que se pueden aplicar para compilar, optimizar, depurar y analizar el código. Para obtener una lista rápida, escriba cl /? en el símbolo del sistema para desarrolladores. También puede compilar y vincular por separado, así como aplicar las opciones del enlazador en escenarios de compilación más complejos. Para obtener más información sobre el uso y las opciones del compilador y del enlazador, vea Referencia de compilación de C/C++.

Puede usar NMAKE y archivos Make, o MSBuild y archivos del proyecto, para configurar y compilar proyectos más complejos en la línea de comandos. Para obtener más información sobre el uso de estas herramientas, consulte Referencia de NMAKE y MSBuild.

Los lenguajes C y C++ son similares, pero no idénticos. El compilador de MicrosoftC/C++ (MSVC) usa una regla básica para determinar qué lenguaje se usa al compilar el código. De forma predeterminada, el compilador de MSVC trata todos los archivos que finalizan en .c como código fuente de C, y todos los archivos que finalizan en .cpp como código fuente de C++. Para hacer que el compilador trate todos los archivos como C con independencia de la extensión del nombre de archivo, use la opción /TC del compilador.

MSVC cumple de forma predeterminada los estándares ANSIC89 e ISOC99, pero no es totalmente conforme. En la mayoría de los casos, el código de C portable se compilará y se ejecutará según lo previsto. El compilador proporciona compatibilidad opcional con los cambios en ISOC11/C17. Para compilar con la compatibilidad con C11/C17, use la marca /std:c11 o /std:c17. del compilador. Para la compatibilidad con C11 y C17, se requiere WindowsSDK10.0.20201.0 o posterior. Se recomienda WindowsSDK10.0.22000.0 o una versión posterior. Puede descargar el SDK más reciente desde la página WindowsSDK. Para obtener más información e instrucciones sobre cómo instalar y usar este SDK para el desarrollo de C, vea Instalación de la compatibilidad con C11 y C17 en VisualStudio.

Ciertas funciones de biblioteca y nombres de función POSIX están en desuso en MSVC. Las funciones se admiten, pero los nombres preferidos han cambiado. Para obtener más información, vea Características de seguridad de CRT y Advertencia del compilador (nivel3) C4996.

Consulte también

Tutorial: Crear un programa de C++ estándar (C++)
Referencia del lenguaje C
Proyectos y sistemas de compilación
Compatibilidad

Tutorial: Compilar un programa de C en la línea de comandos (2024)
Top Articles
Latest Posts
Article information

Author: Saturnina Altenwerth DVM

Last Updated:

Views: 6009

Rating: 4.3 / 5 (64 voted)

Reviews: 87% of readers found this page helpful

Author information

Name: Saturnina Altenwerth DVM

Birthday: 1992-08-21

Address: Apt. 237 662 Haag Mills, East Verenaport, MO 57071-5493

Phone: +331850833384

Job: District Real-Estate Architect

Hobby: Skateboarding, Taxidermy, Air sports, Painting, Knife making, Letterboxing, Inline skating

Introduction: My name is Saturnina Altenwerth DVM, I am a witty, perfect, combative, beautiful, determined, fancy, determined person who loves writing and wants to share my knowledge and understanding with you.