Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726

    [C] Estrarre elementi riga da un matrice

    Ciao,
    vorrei chiedervi questo:
    ho necessita di estrapolare tutti gli elementi di riga di una matrice e metterli all'interno di un array.

    Ad esempio se avessi la matrice M formata da:
    codice:
    12345
    45678
    94521
    e volessi estrapolare gli interi di riga 0 avrei bisogno di un array che contenga 1,2,3,4,5.
    E' possibile far ciò usando semplicemente i puntatori?
    Se si come?


    Grazie

  2. #2
    se la matrice è implementata come un vettore di puntatori si, altrimenti devi copiare i valori in un nuovo vettore
    ciao
    sergio

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    Nel caso fosse un vettore di puntatori come dovrei fare?

  4. #4
    una possibile implementazione
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    
    int main ()
    {
    
    	int v1[5] = { 1, 2, 3, 4, 5 };
    	int v2[5] = { 4, 5, 6, 7, 8 };
    	int v3[5] = { 9, 4, 5, 2, 1 };
    
    	int size = 3;
    	int ** matrix = ( int ** ) malloc ( size * sizeof(int *) );
    
    	matrix [0] = v1;
    	matrix [1] = v2;
    	matrix [2] = v3;
    
    	printf ("%d\n", matrix[1][3]);	// vale 7
    	printf ("%d\n", matrix[2][1]);	// vale 4
    
    	// un puntatore alla prima riga
    	int *vector = matrix [0];
    	// attenzione che modificando vector si modifica anche matrix
    
    	return (0);
    
    }
    ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    Grazie per il tuo aiuto, e scusa il ritardo (tra tutti gli esami ho avuto poco tempo di scrivere sil forum)

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.