Problemita!!

Iniciado por <<<-Basura->>>, 2 Junio 2011, 19:06 PM

0 Miembros y 1 Visitante están viendo este tema.

<<<-Basura->>>

tengo este codigo
Código (cpp) [Seleccionar]

#include <iostream>
using namespace std;

struct map{
int mapa[3];
};
struct cam{
char nombre[20];
};

int main(){
    cam nom[3];
    map mape;
   
    cin >> nom[0].nombre; 
    cout << nom[0].nombre;
   
    mape.mapa[0] = nom[0];
   
   
return 0;
}


cuando intento compilar sale este error:
main.cpp:18.25: error: cannot convert 'cam' to 'int' in assignment

alguien me podría dar una solución a mi problema
<<<--Basura-->>>

Acermax

Pues nom[0] es un dato de tipo "cam", y eso lo estás intentando meter en mape.map
  • , que es de tipo "int" y no tiene mucho sentido.

<<<-Basura->>>

Es que eso es lo que quiero, en la posición de un array quiero almacenar un struct, pero quisiera saber como hacerlo
<<<--Basura-->>>

El_Java

Para almacenar en un array la direccion de un struct puedes hacerlo con punteros:
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;

struct map{
int mapa[3];
};
struct cam{
char nombre[20];
};

int main(){
    cam nom[3];
    cam *array = new cam[3]; //Declaracion e incializacion del puntero

    cin >> nom[0].nombre;
    cout << nom[0].nombre << endl;

    array[0] = nom[0]; //Asignacion
    cout << array[0].nombre ; //mostrando el nombre de la direccion del array[0]


return 0;
}


Espero que te ayude.

<<<-Basura->>>

Gracias ya lo logre  ;D ;D
<<<--Basura-->>>