Esercizi Scope Variabili in C
Codegrind Team•Jul 12 2024
Ecco degli esercizi semplici con soluzione per praticare la gestione dello scope delle variabili in C.
Esercizio 1: Variabili Locali
Dichiarare e utilizzare una variabile locale all'interno di una funzione.
#include <stdio.h>
void funzione() {
int variabile_locale = 10;
printf("Variabile locale: %d\n", variabile_locale);
}
int main() {
funzione();
return 0;
}
Esercizio 2: Variabili Globali
Dichiarare e utilizzare una variabile globale.
#include <stdio.h>
int variabile_globale = 20;
void funzione() {
printf("Variabile globale: %d\n", variabile_globale);
}
int main() {
funzione();
return 0;
}
Esercizio 3: Variabili Statiche
Dichiarare e utilizzare una variabile statica all'interno di una funzione.
#include <stdio.h>
void funzione() {
static int variabile_statica = 0;
variabile_statica++;
printf("Variabile statica: %d\n", variabile_statica);
}
int main() {
funzione();
funzione();
funzione();
return 0;
}
Esercizio 4: Scope dei Blocchi
Utilizzare una variabile all'interno di un blocco di codice.
#include <stdio.h>
int main() {
int x = 10;
{
int x = 20;
printf("Valore di x all'interno del blocco: %d\n", x);
}
printf("Valore di x all'esterno del blocco: %d\n", x);
return 0;
}
Esercizio 5: Parametri di Funzione
Passare variabili come parametri a una funzione.
#include <stdio.h>
void funzione(int a, int b) {
printf("a = %d, b = %d\n", a, b);
}
int main() {
int x = 5, y = 10;
funzione(x, y);
return 0;
}
Esercizio 6: Variabili Automatiche
Utilizzare variabili automatiche (comportamento predefinito).
#include <stdio.h>
void funzione() {
auto int x = 10; // 'auto' è implicito e può essere omesso
printf("Variabile automatica: %d\n", x);
}
int main() {
funzione();
return 0;
}
Esercizio 7: Variabili Esterne
Dichiarare e utilizzare una variabile esterna in più file (dichiarazione separata).
file1.c
#include <stdio.h>
extern int variabile_esterna;
void funzione() {
printf("Variabile esterna: %d\n", variabile_esterna);
}
int main() {
variabile_esterna = 30;
funzione();
return 0;
}
file2.c
int variabile_esterna;
Esercizio 8: Variabili Register
Utilizzare una variabile register per ottimizzare l'accesso.
#include <stdio.h>
int main() {
register int x = 10;
printf("Variabile register: %d\n", x);
return 0;
}