Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Ayuda con argc y argv

Estas en el tema de Ayuda con argc y argv en el foro de C/C++ en Foros del Web. Hola necesito un poco de ayuda con estas dos argc y argv. Veran necsesito acer este ejercicio Sea fuente.c el archivo que contiene el código ...
  #1 (permalink)  
Antiguo 19/08/2008, 08:15
 
Fecha de Ingreso: agosto-2008
Mensajes: 25
Antigüedad: 16 años, 3 meses
Puntos: 0
Ayuda con argc y argv

Hola necesito un poco de ayuda con estas dos argc y argv.

Veran necsesito acer este ejercicio

Sea fuente.c el archivo que contiene el código fuente de un programa que calcula el número de veces que aparece una vocal determinada dentro de una frase. Tanto la vocal como la frase son proporcionadas desde la línea de órdenes utilizando la sintaxis de ejecución siguiente:
buscaVocales palabra longitud vocal


Lo que necesitaba era si alguien me puede explicar un poco como funcionan las argv y argc, y como utilizarlas para hacer un programa. Es decir como hacer referencia a los parametros y eso...


Gracias un saludo.
  #2 (permalink)  
Antiguo 19/08/2008, 15:37
 
Fecha de Ingreso: junio-2008
Mensajes: 63
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Ayuda con argc y argv

argc indica el número de parámetros que han sido pasados al programa, su valor mínimo es 1.
argv es una lista de esos parámetros, siempre debes tener en cuenta que el parámetro 0 es el nombre del programa.
Te paso un código que lo que hace es mostrar todos los parámetros pasados al programa:

Código:
#include <stdio.h>
int main(int argc, char *argv[])
{
	int i;
	for(i = 0; i < argc; i++) {
		printf("Parámetro %d: %s\n", i, argv[i]);
	}
	return 0;
}
  #3 (permalink)  
Antiguo 19/08/2008, 15:55
 
Fecha de Ingreso: agosto-2008
Mensajes: 25
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Ayuda con argc y argv

Algo he entendido pero no me ha kedao del todo claro.
POR ejemplo que ago para poder realizar el programa de tal forma que lo que pide eso de buscapalabra tal y tal.

Me podrias poner un ejemplo parecido a ese aunke sea un programa que sume uno mas otro o cosa asi.

Algo sencillo.

Gracias un saludo.
  #4 (permalink)  
Antiguo 19/08/2008, 23:54
Avatar de Fayca  
Fecha de Ingreso: abril-2008
Mensajes: 164
Antigüedad: 16 años, 7 meses
Puntos: 2
Respuesta: Ayuda con argc y argv

Esta muy facil mira
int main(int argc, char *argv[])
argc, contiene el numero de argumentos pasados al programa
*argv[], contiene los argumentos pasados
----------------Por ejemplo--------
por ejemplo el comando copy de ms-dos lo ejecutas de esta forma
copy "Archivo a copiar" "Lugar donde lo bas a copiar"
el programa copy resive 2 argumentos
0 - es el nombre del programa
1 - "Archivo a copiar"
2 - "Lugar donde lo bas a copiar"
entonces argc vale 2 por que es el numero de parametros que le pasaste
entonces *argv[] contiene esos parametros
argv[0], es el nombre del programa
argv[1], es el archivo que quieres copiar
argv[2], es el lugar donde lo bas a copiar
  #5 (permalink)  
Antiguo 20/08/2008, 04:56
 
Fecha de Ingreso: agosto-2008
Mensajes: 25
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Ayuda con argc y argv

Ok y eso escrito en codigo seria :


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

argc=2;
argv[0]=copiar;
argv[1]=(origen);
argv[2]=(destino);




}


Seria asi???:S:S.

Gracias por la ayuda de antemano, no tenia ni papa de argc y argv. jeje.
  #6 (permalink)  
Antiguo 20/08/2008, 08:25
 
Fecha de Ingreso: agosto-2008
Mensajes: 25
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Ayuda con argc y argv

Ok ya me he aclarado, probando por aki y por alla.

JEJE muxas gracias por a orientacion.

UN SALUDO.
  #7 (permalink)  
Antiguo 20/08/2008, 12:35
 
Fecha de Ingreso: agosto-2008
Mensajes: 25
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Ayuda con argc y argv

Una dudilla, si yo desde la linea de comandos pongo:

nombreprograma holaquetal adios

Como queda guardado?
Queda en argv[1] el holaquetal entero, esdecir com si fuera un array o cadena.Y en argv[2] el adios.
O queda de esta otra forma en argv[1] 'h' en argv[2] 'o' en argv[3] la 'l' en argv[4] la 'a'.

Saluds-.
  #8 (permalink)  
Antiguo 20/08/2008, 12:44
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Exclamación Respuesta: Ayuda con argc y argv

La primera opción es la correcta, queda en argv[1] el holaquetal y en argv[2] el adios.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 20/08/2008, 14:51
 
Fecha de Ingreso: agosto-2008
Mensajes: 25
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Ayuda con argc y argv

ok y por ejemplo kiero leer cada letra del holaquetal, tengo que declarar un puntero que apunte a argv[1] e ir dandole a puntero++?? o argv[1] ya actua como puntero y puedo acer argv[1]++??

Gracias con esta duda solucionada no dare mas el coñazo..D::D


MUXISIMAS GRACIAS:
  #10 (permalink)  
Antiguo 20/08/2008, 22:44
 
Fecha de Ingreso: junio-2008
Mensajes: 63
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Ayuda con argc y argv

Tienes que crear un apuntador a argv[1] o también puedes usar indexación de arreglos de la siguiente forma:
Código:
	for(int i=0; argv[1][i]; i++) {
		printf("%c\n", argv[1][i]);
	}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:16.