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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  C++ vector por parametro.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: C++ vector por parametro.  (Leído 12,042 veces)
programador10

Desconectado Desconectado

Mensajes: 15


Ver Perfil
C++ vector por parametro.
« en: 10 Octubre 2011, 22:29 pm »


hola buenas tardes.  NO COMPRENDO PORQUE no compila :( ... obs. no me sale ningun error. gracias POR SU AYUDA.

Código
  1. #include <cstdlib>
  2. #include <iostream>
  3. void leer(int v,int tam);
  4. using namespace std;
  5. int main(int argc, char *argv[])
  6. {
  7.    int v[50],n;
  8.  
  9.    cout<<"Ingresar Tamaño del Vector"<<endl;
  10.    cin>>n;    
  11.    leer(v[50],n);    
  12.    system("PAUSE");
  13.    return EXIT_SUCCESS;
  14. }
  15. void leer(int v[50],int tam)
  16. {
  17.     int i;    
  18.     for (i=0;i<tam;i++)
  19.     {
  20.         cout<<"ingresar dato : "<<endl;
  21.         cin>>v[i];
  22.     }
  23.  
  24. }
  25.  


En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: C++ vector por parametro.
« Respuesta #1 en: 10 Octubre 2011, 22:39 pm »

1) El prototipo de la funcion y la definicion no coinciden en sus tipos, por eso este programa compila pero no enlaza al no encontrar la funcion que reciba como parametro dos enteros.

Linea 3:
Código:
void leer(int v,int tam);

Linea 15:
Código:
void leer(int v[50],int tam)

2) Si lo que queres pasar es un array entonces no podes pasar v[50] al llamar a la funcion (que por otra parte seria erroneo, al tener 50 elementos el array estos van de 0 a 49), tenes que pasar v simplemente.

Código:
leer(v, n);


En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
programador10

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: C++ vector por parametro.
« Respuesta #2 en: 10 Octubre 2011, 22:49 pm »

ggracias por esas correciones pero aun no  me compila por completo mira :(

Código
  1. #include <cstdlib>
  2. #include <iostream>
  3. void leer(int v,int tam);
  4.  
  5. using namespace std;
  6. int main(int argc, char *argv[])
  7. {
  8.    int v[50],n;
  9.  
  10.    cout<<"Ingresar Tamaño del Vector"<<endl;
  11.    cin>>n;    
  12.    leer(v,n);    
  13.    system("PAUSE");
  14.    return EXIT_SUCCESS;
  15. }
  16. void leer(int v,int tam)
  17. {
  18.     int i;      
  19.     for (i=0;i<tam;i++)
  20.     {                    
  21.         cin>>v[i];
  22.     }
  23.  
  24. }
  25.  
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: C++ vector por parametro.
« Respuesta #3 en: 10 Octubre 2011, 22:54 pm »

Lo cambiaste mal, el prototipo estaba mal ... ahora podes ponerlo mejor asi en ambos lugares:

Código:
void leer(int *v,int tam);
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
programador10

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: C++ vector por parametro.
« Respuesta #4 en: 10 Octubre 2011, 23:00 pm »

amigo me falta poner los corchetes....
Código
  1. #include <cstdlib>
  2. #include <iostream>
  3.  
  4. int leer(int v[],int tam);
  5.  
  6. using namespace std;
  7. int main(int argc, char *argv[])
  8. {
  9.    int v[50],n;    
  10.    cout<<"Ingresar Tamaño del Vector"<<endl;
  11.    cin>>n;    
  12.    leer(v,n);    
  13.    system("PAUSE");
  14.    return EXIT_SUCCESS;
  15. }
  16. int leer(int v[],int tam)
  17. {      
  18.     for (int i=0;i<tam;i++)
  19.     {   cout<<"ingrese Dato ";                
  20.         cin>>v[i];
  21.     }
  22.  
  23. }


y ahora si me compila perfecto.
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: C++ vector por parametro.
« Respuesta #5 en: 10 Octubre 2011, 23:01 pm »

Asi si, [] y * son equivalentes.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
programador10

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: C++ vector por parametro.
« Respuesta #6 en: 10 Octubre 2011, 23:03 pm »

Gracias. :)
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: C++ vector por parametro.
« Respuesta #7 en: 10 Octubre 2011, 23:06 pm »

De nadas  ::)
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Bug en CMD.EXE, comando FOR, parametro /F
Scripting
leogtz 3 3,047 Último mensaje 4 Septiembre 2009, 20:18 pm
por Anibal784
problemas metodo con parametro (solucionado) era sin parametro XD
Java
rub'n 6 6,568 Último mensaje 25 Noviembre 2010, 16:45 pm
por Afsoon
vector como parametro, problemas
Java
Beginner Web 2 1,926 Último mensaje 20 Agosto 2019, 16:56 pm
por EdePC
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines