Logo it.boatexistence.com

C++ ha l'inizializzazione predefinita?

Sommario:

C++ ha l'inizializzazione predefinita?
C++ ha l'inizializzazione predefinita?

Video: C++ ha l'inizializzazione predefinita?

Video: C++ ha l'inizializzazione predefinita?
Video: C++ gli array (creazione, inizializzazione e ciclare sugli array in C++) 2024, Maggio
Anonim

C è sempre stato molto specifico riguardo ai valori iniziali degli oggetti. Se global o static, verranno azzerati. Se auto, il valore è indeterminato. Questo era il caso dei compilatori pre-C89 ed era così specificato da K&R e nel rapporto C originale di DMR.

C'è un'inizializzazione predefinita in C?

A differenza di alcuni linguaggi di programmazione, C/C++ non inizializza la maggior parte delle variabili su un dato valore (come zero) automaticamente. Pertanto, quando a una variabile viene assegnata una posizione di memoria dal compilatore, il valore predefinito di quella variabile è qualunque valore (spazzatura) si trovi già in quella posizione di memoria!

Qual è l'inizializzazione predefinita di un array in C?

Ad esempio, gli array di interi vengono inizializzati da 0. I valori double e float verranno inizializzati con 0.0. Per gli array di caratteri, il valore predefinito è '\0'. Per una matrice di puntatori, il valore predefinito è nullptr.

È possibile l'inizializzazione dinamica in C?

L'inizializzazione dinamica dell'oggetto in C++

L'inizializzazione dinamica dell'oggetto si riferisce all'inizializzazione degli oggetti in fase di esecuzione cioè, il valore iniziale di un oggetto viene fornito durante tempo di esecuzione. Può essere ottenuto utilizzando costruttori e passando parametri ai costruttori.

Quali variabili vengono inizializzate automaticamente in C?

Le variabili globali vengono inizializzate automaticamente a 0 al momento della dichiarazione. Le variabili globali sono generalmente scritte prima della funzione principale. Nella riga 4, aeb sono dichiarate come due variabili globali di tipo int.