Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [C] aiuto inizializzazione matrice

    Salve! Ho un problema nell'inizializzazione della mia matrice in C
    ho creato una struttura dati graph così fatta

    typedef struct
    {
    vertex vertices[10];
    int weight[10][10];
    }graph;

    Ora vorrei inizializzare la matrice weight, della struttura graph, senza dover ricorrere ad acquisizione da tastiera o a cicli for. In pratica vorrei inizializzare weight direttamente nel codice sorgente con un forma del genere presa da internet
    value matrix[k][k] =
    {
    { 0, 1, oo, oo, oo, oo, oo, oo},
    { 1, 0, 2, 5, 10, oo, oo, oo},
    { oo, 2, 0, oo, oo, 2, oo, oo},
    { oo, 5, oo, 0, oo, oo, 1, oo},
    { oo, 10, oo, oo, 0, oo, 2, 1},
    { oo, oo, 2, oo, oo, 0, oo, 4},
    { oo, oo, oo, 1, 2, oo, 0, 3},
    { oo, oo, oo, oo, 1, 4, 3, 0}
    };
    in maniera tale da poter cambiare velocemente i valori al suo interno.
    Purtroppo non riesco a fare una cosa del genere poiché tale tipo di inizializzazione va fatta nel momento in cui si dichiara la matrice. Nell'esempio la matrice matrix non fa parte di una struct a differenza della mia. Come posso fare una inizializzazione del genere per la mia matrice tenendo presente che la stessa fa parte di una struttura?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254

    Re: [C] aiuto inizializzazione matrice

    Originariamente inviato da puntovale
    Purtroppo non riesco a fare una cosa del genere poiché tale tipo di inizializzazione va fatta nel momento in cui si dichiara la matrice. Nell'esempio la matrice matrix non fa parte di una struct a differenza della mia. Come posso fare una inizializzazione del genere per la mia matrice tenendo presente che la stessa fa parte di una struttura?
    Ti faccio un esempio più semplice, perché dal tuo post non si sa che tipo è 'vertex'.

    La inizializzazione di un variabile di tipo struct si fa in modo molto semplice, esempio:
    codice:
    typedef struct
    {
        char a[10];
        int b[3][3];
    } miastruct;
    
    
    miastruct a =
    {
        "hello",
        {
            { 1, 2, 3 },
            { 4, 5, 6 },
            { 7, 8, 9 }
        }
    };
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    grazie mille ci son riuscito. Per la cronaca vertex è un array contenente tutti i vertici del grafo (ogni vertice è a sua volta uno struct )

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.