AD

¿Ya dominas lo básico? Un curso estructurado de C es la vía rápida para dar el salto.

Ver cursos de C en Udemy

Enlace de afiliado. No te cuesta nada extra.

🔧Lecciones de C
Lección 55 / 68

Leer argumentos de la línea de órdenes

En esta lección recibirás datos al lanzar el programa, sin pedirlos por pantalla.

main(int argc, char *argv[]) recibe cuántos argumentos hay y cuáles son. argv[0] es el nombre del programa, así que los datos empiezan en argv[1].

El código de ejemplo muestra los dos primeros argumentos. La salida que ves corresponde a haberlo lanzado como ./programa Ana 14.

Lo esencial es comprobar argc antes de leer. Acceder a argv[1] cuando no se pasó ningún argumento lee fuera del array, y el programa falla o hace algo peor. Esa comprobación es la primera línea de cualquier programa de línea de órdenes serio.

Y los argumentos llegan siempre como texto, nunca como número: para tratarlos como enteros hay que convertirlos con strtol(). Se ve mucho atoi(), pero no permite distinguir un error de un cero legítimo, así que strtol es la opción correcta.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar C directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)