const è stato introdotto come nuovo elemento del C prendendolo dal C++ dove è stato introdotto.
NON e' una alternativa al define perchè la parola chiave const puo' essere usata in tante parti del codice sorgente (nei parametri, nei puntatori, ecc ...).
Quando viene applicata ad una variabile, questa cessa di essere modificabile (quindi non si parla piu' tecnicamente di variabile) e avremo di fatto una costante. Ma l'importante è che quell'elemento, che pure esiste in memoria, non è modificabile.
Cosa completamente diversa la define, che è utilizzata dal precompilatore solamente per sostituire codice sorgente ad altro codice sorgente.
Non sono intercambiabili (t'ho detto che non sono la stessa cosa); in certi casi (dipende dal codice), si puo' ottenere lo stesso scopo, in altri no (ad esempio per indicare che un puntatore non potrà essere modificato hai a disposizione solo la const).
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |