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

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  argumentos del main?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: argumentos del main?  (Leído 5,764 veces)
<<<-Basura->>>


Desconectado Desconectado

Mensajes: 388



Ver Perfil
argumentos del main?
« en: 9 Octubre 2011, 09:21 am »

Bueno estoy en C, y estoy tratando de pasar argumentos al main, pero se da el caso que quiero pasarle un numero :S, y bueno:

Código
  1. int main(int argc,char **argv){
  2. //...
  3. }
  4.  

argv es el que toma los argumentos, pero es un puntero a char, entonces cuando meto un numero, es tomado como un caracter y lo que quiero es utilizarlo como numero.

intente con:
Código
  1. (int)argv[1];
  2.  
si me lo accepta, pero!, cuando no es el mismo numero que metí, jeje ayuda,

Como hago para pasar un número por argumento??


En línea

<<<--Basura-->>>
Queta

Desconectado Desconectado

Mensajes: 267



Ver Perfil
Re: argumentos del main?
« Respuesta #1 en: 9 Octubre 2011, 10:51 am »

http://www.cplusplus.com/reference/clibrary/cstdlib/atoi/


En línea

"Intenta no volverte un hombre de éxito, sino volverte un hombre de valor." Albert Einstein.
<<<-Basura->>>


Desconectado Desconectado

Mensajes: 388



Ver Perfil
Re: argumentos del main?
« Respuesta #2 en: 10 Octubre 2011, 01:05 am »

Gracias era lo que estaba necesitando!!  :-*
En línea

<<<--Basura-->>>
LearningSpanishProgrammer

Desconectado Desconectado

Mensajes: 67


Ver Perfil
Re: argumentos del main?
« Respuesta #3 en: 10 Octubre 2011, 01:36 am »

Una cosa muy importante:

Código
  1. (int)argv[1]
  2.  

No esta hacendo un cast const char * -> int
El compilador está  mostrando el puntero como  "int"

Código
  1. #include <stdio.h>
  2.  
  3. int main(int argc, char * argv[])
  4. {
  5. printf("%p\n", argv[0]);
  6. printf("%i\n", argv[0]);
  7. printf("%i\n", (int)argv[0]);
  8. printf("%p\n", (int)argv[0]);
  9.  
  10. return 0;
  11. }
  12.  
Entender eso es muy importante para que no repita los mismos errores.

En línea

Estoy aprendiendo español, y tu estas aprendiendo programación
<<<-Basura->>>


Desconectado Desconectado

Mensajes: 388



Ver Perfil
Re: argumentos del main?
« Respuesta #4 en: 12 Octubre 2011, 08:43 am »

Si gracias, LearningSpanishProgrammer, lo tomare en cuanta, aunque lo intente distinto y tampoco me sirvió me quedo con la solución de atoi(); XD

Código
  1. (int)*argv[1];
  2.  

así no voy hacer el cast con el valor del puntero sino con el valor que contiene, pero el problema es que me da el valor en el código ascii, ejemplo digamos fue que el 9 el que inserte, entonces el valor de 9 es 57 decimal... pero gracias a tu posición entendí varias cosas :p
En línea

<<<--Basura-->>>
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Qué significan aquellos parámetros de la lista de argumentos del main ?
Programación C/C++
theluigy13etv 3 2,787 Último mensaje 14 Febrero 2012, 17:41 pm
por rir3760
Argumentos del main
Programación C/C++
mapers 5 3,206 Último mensaje 5 Junio 2012, 22:01 pm
por Ferno
[cagada]: gcc main.c -o main.c. posibilidad de recuperar codigo fuente??
Programación C/C++
xiruko 5 4,280 Último mensaje 3 Agosto 2012, 06:29 am
por xiruko
Duda sobre argumentos para main
Java
reygecko 2 2,221 Último mensaje 21 Diciembre 2012, 08:21 am
por reygecko
C++ argumentos en el main.
Programación C/C++
#Aitor 9 3,689 Último mensaje 7 Mayo 2014, 16:32 pm
por #Aitor
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines