Macro e funzioni inline
Esplori le definizioni delle macro e i loro vantaggi rispetto alle funzioni.
Macro e funzioni inline è una lezione C Academy gratuita su CoddyKit. Questa è la lezione 2 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C Academy include 3 lezioni in totale.
Introduzione alle macro
Macro e funzioni inline
Le macro e le funzioni inline contribuiscono a ottimizzare il codice riducendo l'overhead delle chiamate di funzione.
In questa lezione imparerà:
- Come definire e utilizzare le macro.
- I vantaggi delle funzioni inline rispetto alle macro.
- Come macro e funzioni inline migliorano le prestazioni.

Che cos'è una macro
Che cos'è una macro
Una macro è una direttiva del preprocessore che sostituisce il codice prima della compilazione.
Esempio:
#define SQUARE(x) (x * x)
Durante la compilazione, SQUARE(5) viene sostituito con (5 * 5).
Esempio: utilizzare le macro
Esempio: utilizzare le macro
Questo programma illustra come utilizzare una macro per eseguire calcoli.
#include <stdio.h>
#define SQUARE(x) (x * x)
int main() {
int num = 4;
printf("Square of %d is %d\n", num, SQUARE(num));
return 0;
}Limitazioni delle macro
Limitazioni delle macro
Le macro non eseguono il controllo dei tipi e possono causare risultati imprevisti.
Esempio di problema:
#define MULTIPLY(x, y) x * y
La chiamata MULTIPLY(2 + 3, 4) viene espansa in 2 + 3 * 4, producendo un risultato errato.
Introduzione alle funzioni inline
Introduzione alle funzioni inline
Le funzioni inline offrono un'alternativa alle macro mantenendo la sicurezza dei tipi.
Sintassi:
inline int square(int x) { return x * x; }
Riducono l'overhead delle chiamate di funzione, garantendo al contempo un corretto controllo dei tipi.
Esempio: utilizzare le funzioni inline
Esempio: utilizzare le funzioni inline
Questo programma illustra come sostituire una macro con una funzione inline.
#include <stdio.h>
inline int square(int x) { return x * x; }
int main() {
int num = 4;
printf("Square of %d is %d\n", num, square(num));
return 0;
}Vantaggi delle funzioni inline
Vantaggi delle funzioni inline
Le funzioni inline offrono diversi vantaggi rispetto alle macro:
- Sicurezza dei tipi.
- Debug più efficace (compaiono nelle stack trace).
- Nessun errore di espansione imprevisto.
Quando utilizzare le macro o le funzioni inline
Quando utilizzare le macro o le funzioni inline
Utilizzi le macro quando:
- Definisce costanti semplici.
- Esegue piccole sostituzioni testuali.
Utilizzi le funzioni inline quando:
- Esegue operazioni complesse.
- Deve garantire la sicurezza dei tipi.
Riepilogo
Riepilogo
In questa lezione ha imparato:
- Come definire e utilizzare le macro.
- Le limitazioni delle macro.
- Come le funzioni inline offrano un'alternativa più sicura.
Successivamente esploreremo la compilazione condizionale.

Domande Frequenti
La lezione «Macro e funzioni inline» è gratuita?
Sì — il testo completo di «Macro e funzioni inline» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C Academy, passa a CoddyKit PRO. Il corso C Academy include 3 lezioni in totale.
Cosa imparerò in «Macro e funzioni inline»?
Esplori le definizioni delle macro e i loro vantaggi rispetto alle funzioni. Eserciti C Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare C Academy?
Non è richiesta alcuna esperienza precedente. C Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 3.
Quanto tempo richiede la lezione «Macro e funzioni inline»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione C Academy?
Sì. Ogni lezione C Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Comprendere il preprocessore C
- Macro e funzioni inline
- Compilazione condizionale