Ciao e bentornato. In questa conferenza, voglio parlare di stringhe costanti.
Sappiamo che i valori letterali di stringa o una costante di stringa sono racchiusi tra virgolette doppie.
Ma per quanto riguarda la variabile stessa. Come puoi assicurarti che la variabile
non possa mai cambiare quel valore?
Questo è indicato come una costante. Quindi una stringa costante
a volte è necessaria nel tuo programma in
cui non vuoi che i tuoi valori delle tue variabili cambino mai.
Quindi, ad esempio, se stiamo creando una circonferenza di un calcolo,
ne faremo 3. 14159 volte il diametro.
3. 14159 è una costante. Non cambia mai.
Rappresenta pi greco.
Quindi sarebbe davvero bello se invece di usare quel numero magico, potessimo
usare una variabile e assicurarci che quella variabile non cambi mai.
Quindi ci sono buone ragioni
per usare una costante simbolica invece di digitare semplicemente il numero ogni volta.
Prima di tutto, un nome ti dice molto di più di un numero.
Dovuto è uguale a 0. 015 volte il valore della
casa è molto meno significativo di quanto dovuto è uguale all'aliquota fiscale moltiplicata per il valore.
Quindi vogliamo avere nomi di variabili che rappresentino numeri
che non cambiano mai.
Se leggi un lungo programma, il
significato della versione della seconda visione è molto più chiaro.
È molto più facile guardare quel codice e capire che 0. 015 rappresenta l'aliquota fiscale.
Supponiamo di aver usato una costante in più
punti e diventi necessario modificarne
il valore, dovresti andare a cambiare quel valore ovunque nel programma
invece di cambiare solo in un punto in cui definisci quella costante.
Ne ho parlato prima quando ho usato il termine numeri magici.
Questo è ciò a cui ci si riferisce.
Ogni volta che vedi un numero utilizzato in un programma non è memorizzato
in una variabile, di solito è meglio creare quel numero e metterlo in una costante.
Perché poi se lo usi più volte e quella variabile
cambia, tutto ciò che devi fare è
cambiarla una volta. Non devi cambiarlo ovunque lo usi.
Quindi evita i numeri magici, usa le costanti.
Un modo in cui puoi definire una costante in c è che puoi usare
per definire la direttiva del preprocessore.
Quindi questa direttiva del preprocessore ti consente di definire le costanti e
in realtà l'ho usata in un paio di programmi. Ora sto cercando di aiutare a spiegarlo.
Quindi, se volessi fare un'aliquota fiscale ed fosse una
costante, potresti dire definire con il segno di cancelletto prima di esso.
Sappiamo che è una direttiva del preprocessore a causa del segno di
cancelletto, quindi diremmo il nome e quindi il valore.
Quando il programma viene compilato, il valore 0. 015 verrà sostituito ovunque
tu abbia utilizzato l'aliquota fiscale, proprio come una variabile,
ma in realtà non è una variabile.
Non è possibile assegnare altri valori a questo.
Se fosse una variabile, saresti in grado di
assegnarle dei dati, ma non in questo caso perché è un preprocessore.
Quindi la direttiva del preprocessore dice che non puoi assegnare
dati e lo specifichi con define.
Quindi nota la sintassi per questo. Hai il simbolo della sterlina seguito dalla parola chiave definita.
E poi, dopo, hai il tuo nome.
Non stiamo usando alcun operatore di assegnazione.
Abbiamo solo il nostro nome e poi lo spazio e poi il valore.
Quindi, per assegnare un valore a quella definizione, tutto ciò di cui hai bisogno è uno spazio.
Non c'è punto e virgola alla fine. Non è una dichiarazione. È molto specifico.
Quindi quello che sta succedendo qui è che sta avvenendo la sostituzione del tempo
di compilazione per questi preprocessori. Il preprocessore viene eseguito prima che il compilatore ricordi.
Il preprocessore verrà eseguito e vedrà queste radici di carry definite. E poi ovunque vede un'aliquota fiscale,
inserirà solo 0. 015 per il compilatore.
Le istruzioni definite possono apparire ovunque nel programma.
Non esiste una definizione locale. Una volta che hai una definizione,
chiunque può usarla.
Ora, la migliore pratica o convenzione è di solito mettere le
istruzioni definite all'inizio del programma o
all'interno di un file di inclusione se si desidera
condividere più di un file sorgente ma non è necessario farlo.
Poiché è in esecuzione sul preprocessore,
non ha alcun ambito, non ha alcun locale o globale.
Puoi metterlo ovunque. E ovunque nel programma puoi vederlo,
anche se viene utilizzato prima di essere definito.
Le dichiarazioni definite sono anche molto buone perché aiutano a rendere i tuoi programmi più portabili.
A volte puoi usare un'istruzione definita e correlarla a un particolare computer su cui stai eseguendo quando
il programma è in esecuzione, e otterrà proprio quel valore.
L'istruzione definita può essere utilizzata anche per caratteri e costanti stringa, non solo
per i numeri. Se volessimo fare qualcosa del genere, perfettamente valido.
Devi solo racchiudere i singoli caratteri all'interno di una singola virgoletta.
E se si desidera effettivamente inserire un'intera stringa letterale, è
sufficiente metterla tra virgolette doppie. Ed è quello che sta facendo questo oops.
Un altro modo per creare costanti e vedere è un
meccanismo più recente. C90 ha aggiunto fondamentalmente un altro
modo che fornisce il modificatore costante.
È possibile utilizzare la parola chiave costante per convertire una dichiarazione per una variabile in una dichiarazione per una costante.
E questo ti permetterà di non essere mai in grado di cambiare quella variabile. Quindi tutto ciò che fai è dire const
e quindi il nome del tipo di dati e quindi il nome della variabile.
E ciò che questo fa in questo esempio renderà i mesi una costante simbolica per 12.
Non la chiamiamo variabile perché una variabile può cambiare,
ecco perché si chiama variabile.
Hai costanti o variabili e
la costante in mesi non è una variabile, non cambia.
Constant trasforma i mesi in un valore di sola lettura.
È possibile visualizzare i mesi e utilizzarli nei calcoli. Non puoi modificare il valore dei mesi.
Quindi le costanti sono importanti se non vuoi che i dati
cambino e possono anche sostituire i numeri magici.
Const è un approccio più nuovo ed è più flessibile rispetto all'utilizzo di define.
Ti consente di dichiarare un tipo.
Ha anche un migliore controllo su quali parti
di un programma possono utilizzare la costante.
Quindi dovresti usare costante ogni volta che puoi, ma vedrai molti
programmi che usano definito perché era il primo meccanismo.
Inoltre, esiste un terzo modo per creare una
costante, ovvero l'utilizzo dell'enumerazione. Ricorda, abbiamo parlato di enumerazioni.
Le enumerazioni sono un modo per creare il
proprio tipo di variabile e sono associati solo determinati dati. Non è possibile modificare il valore delle enumerazioni.
Una volta definita un'enumerazione, deve avere quei valori.
Può avere valori diversi, ma è comunque
una sorta di modo per creare una costante simbolica, non completa, ma una sorta di via.
Inoltre, con const, puoi inizializzare un array di caratteri e dichiararlo come costante, questo è
un buon modo di gestire i messaggi standard.
Quindi, se dici che il messaggio const char è uguale alla fine del mondo
è vicina, questo dichiarerà il messaggio come una costante ed è protetto da
modifiche esplicite all'interno del tuo programma. Qualsiasi tentativo di provare a modificare il messaggio eseguendo
una copia str genererà un messaggio di errore dal compilatore.
E ora puoi usarlo per un messaggio standard che può essere
visualizzato come output in varie parti del programma.
La tecnica per definire i messaggi standard è particolarmente utile se vengono
utilizzati in molti posti, come ho detto.
Impedisce la modifica accidentale di tali costanti in altre parti del programma, proprio
come i numeri magici.
Quindi le costanti che vuoi usarle
nel tuo programma, due modi per impiegarle essenzialmente, usando
la definizione e usando la parola chiave costante.
Si prega di prestare attenzione a questo.
Potresti vederlo in alcuni esempi imminenti.
Grazie.