[C] Incremento elementi vettore via puntatore

di Anonimizzato22107 il
1 risposte
Ciao, ho provato a fare un esercizio che prevedeva l'incrementazione di ciascun elemento di un vettore senza però effettuarne l'accesso diretto, l'accesso agli elementi va effettuato tramite i puntatori.

#include <stdio.h>

int main(){
    int v[]={1,2,3,4,5};
    int conta;
    int *ptr;
    ptr=v;
    
    for(conta=0;conta<5;conta++){
        printf("%d ",*ptr+conta);
    }
    
    for(conta=0;conta<5;conta++){
        *ptr+=1;
        ptr++;
    }
    
    printf("\n");
    for(conta=0;conta<5;conta++){
        printf("%d ",ptr+conta);
    }
    
    return(0);
}
Quando però stampo il vettore incrementato mi stampa valori enormi. Grazie in anticipo

1 Risposte

  • Occhio all'ultima for ... deve essere
    
    	for (conta = 0, ptr=v; conta<5; conta++) {
    		printf("%d ", *ptr + conta);
    	}
    
Devi accedere o registrarti per scrivere nel forum
1 risposte