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

[SOLUCIONADO] Error de direccion de memoria

Estas en el tema de Error de direccion de memoria en el foro de C/C++ en Foros del Web. Hola a todos tengo un error de punteros en la linea 26, no me permite imprimir el contenido de el puntero; en la linea 24 ...
  #1 (permalink)  
Antiguo 11/03/2015, 19:44
 
Fecha de Ingreso: febrero-2014
Mensajes: 107
Antigüedad: 10 años, 8 meses
Puntos: 0
Pregunta Error de direccion de memoria

Hola a todos tengo un error de punteros en la linea 26, no me permite imprimir el contenido de el puntero; en la linea 24 ya he asignado la direccion de memoria de la matriz al puntero de la estructura;

Código C++:
Ver original
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. struct dendrita{
  6.     float peso=0;
  7.     float *valor;
  8. };
  9.  
  10. float diag[3][3]={{1,0,0},{0,1,0},{0,0,1}};
  11.  
  12. class neurona{
  13. private:
  14.     dendrita dendritas[9];
  15.     int pos=0;
  16.     float sum=0;
  17. public:
  18.     neurona(){
  19.         for(int i=0;i<3;i++){
  20.             for(int j=0;j<3;j++){
  21.                 if(diag[i][j]==1){
  22.                     dendritas[pos].peso=0.25;
  23.                 }
  24.                 dendritas[pos].valor=&diag[i][j];
  25.                 pos++;
  26.                 cout<<(*(dendritas[pos].valor))<<endl;
  27.                 //sum=sum+((dendritas[pos].peso)*(*(dendritas[pos].valor)));
  28.             }
  29.         }
  30.     }
  31.  
  32.     void evaluar(){
  33.         if(sum==0.75){
  34.             cout<<"estoy excitada";
  35.         }
  36.     }
  37.  
  38. };
  39.  
  40. int main()
  41. {
  42.     cout << "Hello World!" << endl;
  43.  
  44.     for(int i=0;i<3;i++){
  45.         for(int j=0;j<3;j++){
  46.             cout<<diag[i][j]<<" ";
  47.         }
  48.         cout<<endl;
  49.     }
  50.  
  51.     neurona prueba;
  52.     //prueba.evaluar();
  53.     return 0;
  54. }

Última edición por shikamarucb; 11/03/2015 a las 19:49
  #2 (permalink)  
Antiguo 11/03/2015, 23:52
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Error de direccion de memoria

No soy un experto en C++ y creo que tampoco necesito serlo para saber que este es el problema.

Código C++:
Ver original
  1. pos++;
  2. cout<<(*(dendritas[pos].valor))<<endl;

Etiquetas: errores, memoria, punteros
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 09:45.