Untitled
unknown
c_cpp
a month ago
1.2 kB
1
Indexable
Never
/* I parametri possono essere passati in due modi principali: 1) Per valore --> viene passata una copia dei valori degli argomenti 2) Per riferimento (uso di puntatori) --> viene passato l'indirizzo delle variabili originali */ #include <stdio.h> void incrementaUno(int x) { x++; printf("Dentro la funzione: %d\n", x); } void incrementaDue(int *n) { (*n)++; printf("Dentro al funzione: %d\n", *n); } // Gli array sono SEMPRE passati per riferimento (anche se sembra per valore). // Questo perché il nome dell'array è un puntatore al primo elemento. // Quindi non viene passato una copia dell'intero array, ma solo l'indirizzo del // primo elemento void stampaArray(int arr[], int dimensione) { int i=0; for(i = 0; i<dimensione; i++) { printf(" %d ", arr[i]); } } int main() { //int x = 10; /*printf("Prima della funzione: %d\n", x); incrementaUno(x); printf("Dopo la funzione: %d\n", x);*/ /*printf("Prima della funzione: %d\n", x); incrementaDue(&x); printf("Dopo la funzione: %d\n", x);*/ int numeri [] = {4, 5, 9, 1}; int dim = 4; stampaArray(numeri, dim); return 0; }
Leave a Comment