Título: int main (int argc, char* argv[]) Publicado por: Locura_23 en 23 Mayo 2021, 21:18 pm Para qué sirven exactamente estos argumentos en main ?
Título: Re: int main (int argc, char* argv[]) Publicado por: DtxdF en 23 Mayo 2021, 21:39 pm Hola @Locura_23
argc: Argument Count, que indica la cantidad de argumentos dados por la entidad que ejecutará este programa. argv: Argument Vector, ya serían los argumentos proporcionados en sí, siendo una lista de cadenas. Si, por ejemplo, tenemos el siguiente código: main.c: Código
Compilamos: Código
Al ejecutarlo sin argumentos este programa, se mostrará en la salida del terminal el nombre del programa, que para este caso es main.c. Código
Pero si ejecutaramos el programa con argumentos: Código
También si escribe un tercer argumento para la función main (llamémosle env), se mostrarán las variables de entorno. ~ DtxdF Título: Re: int main (int argc, char* argv[]) Publicado por: K-YreX en 23 Mayo 2021, 21:46 pm Un programa cuando se ejecuta puede recibir una serie de argumentos.
Esto se suele obviar porque normalmente ejecutamos los programas mediante un doble clic en el .exe. Imagina que tienes tu programa en C/C++ y lo compilas. Ahora tienes como resultado tu ejecutable: programa.exe. Para ejecutarlo puedes buscarlo y hacer doble clic o puedes acceder a la ruta mediante la Consola (cmd/Powershell de Windows) o Terminal (de Linux) mediante: Código: cd ruta_a_tu_ejecutable Código: ./programa.exe Para manejar estos argumentos en el propio programa están argc y argv: - argc contiene el número de argumentos recibidos. Siempre es >= 1. - argv es un array de char[] donde cada uno es una de las palabras Código: argc = 7 Título: Re: int main (int argc, char* argv[]) Publicado por: Locura_23 en 23 Mayo 2021, 22:50 pm Entiendo, muchas gracias por sus respuestas.
|