Casa Finanza personale Come verificare la posizione di una variabile nella programmazione C - dummies

Come verificare la posizione di una variabile nella programmazione C - dummies

Video: Corso #5 di programmazione C - Gli Array ed esercizi 2025

Video: Corso #5 di programmazione C - Gli Array ed esercizi 2025
Anonim

Nella programmazione C, il tipo e la dimensione di una variabile vengono scoperti per primi dichiarando tale variabile come un tipo specifico, ma anche usando la parola chiave sizeof. La seconda descrizione di una variabile, il suo contenuto, può essere ricavata leggendo il valore della variabile usando la funzione del linguaggio C appropriata.

La terza descrizione di una variabile è la sua posizione nella memoria. Raccogli queste informazioni utilizzando l'operatore & e il segnaposto% p, come mostrato in O Variabile, perché sei?

O VARIABILE, QUINDI ARTE QUI?

#include int main () {char c = 'c'; int i = 123; flottante f = 98. 6; doppia d = 6. 022E23; printf ("Indirizzo di 'c'% pn", & c); printf ("Indirizzo di 'i'% pn", & i); printf ("Indirizzo di 'f'% pn", & f); printf ("Indirizzo di 'd'% pn", & d); return (0);}

Quando l'operatore & esegue il prefisso di una variabile, restituisce un valore che rappresenta l'indirizzo della variabile, o la sua posizione nella memoria. Quel valore è espresso in esadecimale. Per visualizzare quel valore, viene utilizzato il carattere di conversione% p, come mostrato in O Variabile, perché sei?

Esercizio 1 : Digitare il codice sorgente da O Variabile, perché sei? nel tuo editor. Costruisci ed esegui.

I risultati prodotti dal programma generato dall'esercizio 1 sono unici, non solo per ciascun computer ma anche, potenzialmente, per ogni volta che viene eseguito il programma.

Indirizzo di 'c' 0x7fff5fbff8ff Indirizzo di 'i' 0x7fff5fbff8f8 Indirizzo di 'f' 0x7fff5fbff8f4 Indirizzo di 'd' 0x7fff5fbff8e8

Variabile c è memorizzato nella posizione 0x7fff5fbff8ff - questa è la posizione decimale 140, 734, 799, 804, 671. Entrambi i valori sono banali, naturalmente; il computer tiene traccia delle posizioni di memoria, il che va bene per me.

Questa illustrazione mostra come questi indirizzi vengono visualizzati in memoria.

I singoli elementi dell'array hanno anche posizioni di memoria, come mostrato in posizioni di memoria in una matrice sulla linea 10. L'operatore & esegue il prefisso della specifica variabile elemento, tossendo su un indirizzo. Il carattere di conversione% p nella funzione printf () visualizza l'indirizzo.

LOCALIZZAZIONI DI MEMORIA IN UN ARRAY

#include int main () {char hello [] = "Hello!"; int i = 0; while (ciao [i]) {printf ("% c in% pn", ciao [i], e ciao [i]); i ++;} return (0);}

Exercise 2 : Crea un nuovo progetto usando il codice sorgente mostrato in Memory Positions in una matrice. Costruisci ed esegui.

Anche in questo caso, l'uscita della posizione di memoria è unica su ciascun computer.

H a 0x7fff5fbff8f0 e a 0x7fff5fbff8f1 l a 0x7fff5fbff8f2 l a 0x7fff5fbff8f3 o a 0x7fff5fbff8f4!a 0x7fff5fbff8f5

Diversamente dall'esempio dell'esercizio 1, gli indirizzi generati dall'esercizio 2 sono contigui in memoria, un byte dopo l'altro.

Esercizio 3 : Codifica un programma per visualizzare cinque valori in un array int insieme all'indirizzo di memoria di ciascun elemento. È possibile utilizzare le posizioni memoria in una matrice per ispirare, anche se un ciclo for potrebbe essere più semplice da codificare.

  • A proposito, l'operatore di localizzazione e memoria dovrebbe esserti familiare. Viene utilizzato dalla funzione scanf (), che richiede l'indirizzo di una variabile, non la variabile stessa. Questo perché scanf () colloca direttamente un valore in una posizione di memoria. Come? Usando i puntatori, ovviamente!

  • L'operatore & è anche l'operatore AND bit a bit; tuttavia, il compilatore è abbastanza intelligente da dire quando e prefigura una variabile e quando è parte di un'equazione matematica binaria.

Come verificare la posizione di una variabile nella programmazione C - dummies

Scelta dell'editore

Vantaggi di base della rete - manichini

Vantaggi di base della rete - manichini

Se la verità viene detta, le reti di computer sono un problema da impostare. Perché i vantaggi di avere una rete rendono la pena di crearne uno utile. Non è necessario essere un dottorato di ricerca per comprendere i vantaggi del networking. Le reti riguardano esclusivamente la condivisione. Nello specifico, le reti riguardano la condivisione di tre elementi: informazioni, risorse, ...

Biometria L'accettazione, la privacy e la legge - manichini

Biometria L'accettazione, la privacy e la legge - manichini

La tecnologia biometrica non è affatto universalmente accettata da tutti gli utenti. Ci sono una serie di considerazioni sociali e legali che danno ad ogni organizzazione una pausa prima di fare il salto a capofitto nell'implementazione di un sistema biometrico. Le persone sono più a loro agio con i sistemi di raccolta biometrici che sono i meno intrusivi. Scanner per retina e nasi elettronici sono ...

Biometria Nozioni di base - manichini

Biometria Nozioni di base - manichini

La biometria non è roba da fantascienza. Puoi trovare una dozzina di modi più o meno efficaci per utilizzare la biometria per identificare qualcuno, ognuno dei quali si divide in due classi: la biometria fisiologica misura una parte specifica della struttura o della forma di una porzione del corpo di un soggetto. La biometria comportamentale è più interessata a come ...

Scelta dell'editore

Come creare un nuovo dizionario personalizzato in Excel 2007 - dummies

Come creare un nuovo dizionario personalizzato in Excel 2007 - dummies

In Excel 2007, è possibile creare dizionari personalizzati da utilizzare quando si esegue il controllo ortografico dei fogli di lavoro. Utilizzare il pulsante Aggiungi al dizionario nella finestra di dialogo Controllo ortografico per aggiungere parole sconosciute a un dizionario personalizzato. Per impostazione predefinita, Excel aggiunge queste parole a un file dizionario personalizzato denominato CUSTOM. DIC, ma è possibile creare una nuova personalizzazione ...

Come creare un componente aggiuntivo da un file di cartella di lavoro Excel Excel normale in VBA - modi di dire

Come creare un componente aggiuntivo da un file di cartella di lavoro Excel Excel normale in VBA - modi di dire

Sebbene sia possibile convertire qualsiasi cartella di lavoro di Excel in un componente aggiuntivo, non tutte le cartelle di lavoro traggono vantaggio da questa conversione. Una cartella di lavoro senza macro rende un componente aggiuntivo inutile. In effetti, gli unici tipi di cartelle di lavoro che traggono vantaggio dall'essere convertiti in un componente aggiuntivo sono quelli con macro. Ad esempio, una cartella di lavoro costituita da macro generiche (Sub ...

Come creare una nuova cartella di lavoro in Excel 2010 - dummy

Come creare una nuova cartella di lavoro in Excel 2010 - dummy

Se si lavora in Microsoft Excel 2010 e vuoi iniziare a lavorare in un nuovo file di cartella di lavoro di Excel, puoi facilmente creare una nuova cartella di lavoro. Per fare ciò, puoi usare un comando nella scheda File o una scorciatoia da tastiera. Fare clic sulla scheda File. Excel visualizza la visualizzazione Backstage, in cui è possibile accedere ai comandi relativi ai file. ...

Scelta dell'editore

Usa lo strumento Gomma in Adobe Illustrator CS5 - manichini

Usa lo strumento Gomma in Adobe Illustrator CS5 - manichini

Adobe Illustrator Creative Suite 5 (Adobe CS5) Illustrator è utilizzato per rimuovere rapidamente aree di grafica con la stessa facilità con cui si cancellano i pixel in Photoshop, accarezzando con il mouse su qualsiasi forma o gruppo di forme. Facendo doppio clic sullo strumento Gomma, è possibile definire il diametro, l'angolo e la rotondità della gomma. Se stai usando un ...

Trasforma gli strumenti in Adobe Illustrator CS5 - dummies

Trasforma gli strumenti in Adobe Illustrator CS5 - dummies

I più popolari strumenti di trasformazione in Adobe Creative Suite 5 (Adobe CS5) Illustrator - Rifletti, scala, inclina, rimodella e Trasformazione libera: sono facili da usare e modificano rapidamente la tua illustrazione. Lo strumento Rifletti Niente è simmetrico, giusto? Forse no, ma gli oggetti non creati simmetricamente in Illustrator possono sembrare off-kilter. Utilizzando lo strumento Rifletti, si ...

Quando utilizzare Adobe CS5 Illustrator - dummies

Quando utilizzare Adobe CS5 Illustrator - dummies

Utilizzando Adobe Creative Suite 5 (Adobe CS5) Illustrator anziché Photoshop , ottieni diversi benefici. Potresti aver sentito che Illustrator è migliore per la grafica vettoriale, ma perché e che altro porta? Illustrator può salvare ed esportare immagini nella maggior parte dei formati di file. Scegliendo di salvare o esportare, è possibile creare un ...