Buenos días,<div><br></div><div>Estoy con un trabajo sobre ficheros, el cual es un poco enredoso a la hora de usar los distintos tipos, concretamente tengo problemas en usar el array de tipo puntero, que esta en un nodo llamado nodocliente de tipo T_cliente, y dicho array, que es de tipo puntero apunta a un campo del nodo "nodopaquete" de tipo T_paquete.</div>
<div><br></div><div>A continuación os muestro mi declaración de tipos:</div><div><br></div><div><div>typedef struct nodopaquete* T_paquete;</div><div>          typedef struct nodocliente* T_cliente;</div><div>                 </div>
<div>          const unsigned MAX_RESERVAS=5; //numero maximo de reservas.</div><div>          </div><div>          typedef T_paquete T_turismo[MAX_RESERVAS-1];</div><div>          </div><div>          </div><div>                  struct nodopaquete {</div>
<div>                         T_paquete sig;</div><div>                         string cod_id;</div><div>                         unsigned plazas;</div><div>                         unsigned precio;</div><div>                         };</div>
<div>                         </div><div>          </div><div>          </div><div>                  struct nodocliente {</div><div>                         T_cliente sig;</div><div>                         string nombre;</div>
<div>                         unsigned capital;</div><div>                         unsigned reservas;</div><div>                         T_turismo destinos;</div><div>                         };</div><div>        </div><div>
          </div><div>          struct T_Datos {</div><div>                 T_cliente cliente;</div><div>                 T_paquete paquete;</div><div>                 };</div></div><div><br></div><div><br></div><div>El problema que tengo es intentar acceder al nodo que apunta cada puntero de array mencionado antes, he intentado hacerlo de varias maneras, y ahora mismo está del siguiente modo, y el compilador da error de: "cod_id no ha sido declarado".</div>
<div><br></div><div>Os muestro mi procedimiento de "listar":</div><div><br></div><div><div>void listar (const T_Datos& datos){</div><div>     </div><div>     T_cliente aux;</div><div>     T_paquete ptr;</div>
<div>     </div><div>     ptr=datos.paquete;</div><div>     </div><div>     cout<<"-------------------------"<<endl;</div><div>     </div><div>     //Mostramos los distintos paquetes turísticos disponibles:</div>
<div>          while (ptr!=NULL){</div><div>               cout<<ptr->cod_id<<" "<<ptr->plazas<<" "<<ptr->precio<<endl;</div><div>               ptr=ptr->sig;</div>
<div>           }</div><div>           </div><div>     cout<<"-------------------------"<<endl;</div><div>     </div><div>     //A continuación se muestran los clientes y sus respectivas reservas.</div>
<div>     </div><div>     aux=datos.cliente;</div><div>     </div><div>         while (aux!=NULL){</div><div>               </div><div>               cout<<aux->nombre<<" "<<aux->capital;</div>
<div>               </div><div>                  //Y ahora mostramos las reservas las cuales están en el array:</div><div>                      </div><div>                      //Consultar como declarar y acceder al array insertado en la lista.</div>
<div>                      </div><div>                      for (int i=0; i<MAX_RESERVAS; i++){</div><div>                          </div><div>                          if (aux->destinos[i]!=NULL){</div><div>                                                  </div>
<div>                              cout<<" "<<aux->destinos[i].cod_id;                    </div><div>                           }</div><div>                        }</div><div>                  cout<<endl;</div>
<div>               </div><div>               }</div><div>               </div><div>     cout<<"-------------------------"<<endl;</div><div>     </div><div> }</div></div><div><br></div><div><br></div>
<div>Espero vuestra ayuda, muchas gracias,</div><div><br></div><div>Saludos,</div><div>Antonio.</div>