elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  ¿Qué significan aquellos parámetros de la lista de argumentos del main ?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Qué significan aquellos parámetros de la lista de argumentos del main ?  (Leído 1,960 veces)
theluigy13etv

Desconectado Desconectado

Mensajes: 179


Primero se hace, después se mejora


Ver Perfil
¿Qué significan aquellos parámetros de la lista de argumentos del main ?
« en: 12 Febrero 2012, 05:23 am »

Últimamente he visto que en varios códigos en vez de simplemente hacer:

Código:
int main(){
   return 0;
}

hacen:
Citar
int main(int argc, char *argv[]) {

Quisiera saber el motivo!! Muchas gracias


En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.148


I'Love...!¡.


Ver Perfil WWW
Re: ¿Qué significan aquellos parámetros de la lista de argumentos del main ?
« Respuesta #1 en: 12 Febrero 2012, 05:51 am »

Se usan para retornar el numero de argumentos que se le pasaron en ejecucion a tu programa (argc) que se retornan en *argv[], si no mal recuerdo el primer elemento es la ruta del exe.

Código
  1. int main(int argc, char *argv[])
  2. {
  3.    int i = 0;
  4.    for (i = 0;argc > i; i++)
  5.        fprintf(stdout, "%s\n", argv[i]);
  6.    return EXIT_SUCCESS;
  7. }
  8.  

Dulces Lunas!¡.


« Última modificación: 12 Febrero 2012, 05:54 am por BlackZeroX (Astaroth) » En línea

The Dark Shadow is my passion.
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: ¿Qué significan aquellos parámetros de la lista de argumentos del main ?
« Respuesta #2 en: 12 Febrero 2012, 07:00 am »

http://c.conclase.net/curso/?cap=020c
http://decsai.ugr.es/~jfv/ed1/c/cdrom/cap6/cap64.htm

En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: ¿Qué significan aquellos parámetros de la lista de argumentos del main ?
« Respuesta #3 en: 14 Febrero 2012, 17:41 pm »

Extendiendo la explicación que ya te han dado.

* argv[0] usualmente es el nombre de la aplicación pero hay la posibilidad de que sea NULL.

* argv[ i ] es el argumento "i" con este objeto en el rango 0 .. argc - 1

* argv[argc] siempre es NULL.

En base a ello puedes procesar los argumentos mediante un bucle utilizando un contador (lo usual) o un puntero. Por ejemplo (siguiendo el estándar C90):
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(int argc, char *argv[])
  5. {
  6.   int i;
  7.   char **p;
  8.  
  9.   puts("Lista de argumentos (1):");
  10.   for (i = 0; i <= argc; i++)
  11.      printf(
  12.         "argv[%d] == \"%s\"\n",
  13.         i,
  14.         argv[i] != NULL ? argv[i] : "NULL"
  15.      );
  16.  
  17.   puts("----");
  18.  
  19.   puts("Lista de argumentos (2):");
  20.   for (p = argv; p <= argv + argc; p++)
  21.      printf(
  22.         "argv[%ld] == \"%s\"\n",
  23.         (long int) (p - argv),
  24.         *p != NULL ? *p : "NULL"
  25.      );
  26.  
  27.   return EXIT_SUCCESS;
  28. }

Un saludo
« Última modificación: 14 Febrero 2012, 18:35 pm por rir3760 » En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
argumentos del main?
Programación C/C++
<<<-Basura->>> 4 4,642 Último mensaje 12 Octubre 2011, 08:43 am
por <<<-Basura->>>
Argumentos del main
Programación C/C++
mapers 5 2,106 Último mensaje 5 Junio 2012, 22:01 pm
por Ferno
Duda sobre argumentos para main
Java
reygecko 2 1,476 Último mensaje 21 Diciembre 2012, 08:21 am
por reygecko
[SOLUCIONADO][Ayuda]Parametros en la funcion main con Geany, C++
Programación C/C++
darking664 4 2,866 Último mensaje 8 Septiembre 2013, 03:42 am
por darking664
C++ argumentos en el main.
Programación C/C++
#Aitor 9 2,536 Último mensaje 7 Mayo 2014, 16:32 pm
por #Aitor
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines