Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    [c] non riesco ad accedere alla struttura

    ciao a tutti..mi controllate questo prg?
    non va bene la strcpy fatta cosi? non riesco ad accedere alla struttura puntata dal puntatore interno alla prima struttura...

    codice:
    #include <stdio.h>
    
    typedef enum {ERROR, OK} status;
    
    typedef struct{
      char targa[100];
      char marca[100];
      char modello[100];
    } record_auto;
    
    typedef struct a{
      record_auto *puntatore;
      int primalibera;
      int size;
    } *database_auto;
    
    database_auto make(int dim);
    
    
    int main()
    {
      database_auto db = make(10);
    
      strcpy(db->puntatore[db->primalibera]->targa, "luca");
    
    }
      
    
    //faccio le assegnazioni
    database_auto make(int dim)
    {
      database_auto db = (database_auto) malloc(sizeof(struct a));
      db -> puntatore = (record_auto *) malloc(dim * sizeof(record_auto));
      db -> primalibera = 0;
      db -> size = dim;
      return db;
    }

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    cosi funziona:

    strcpy(db->puntatore[db->primalibera].targa, "luca");

  3. #3
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    Scrivendo:

    puntatore[db->primalibera]

    hai già deferenziato con l'operatore [] il campo puntatore e quindi ottieni direttamente la struttura, e per accedere ai suoi campi utilizzi l'operatore '.' e non '->',


  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    si si..avevo intuito grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.