Come incrementare il valore di un puntatore all'interno di una funzione

October 12

Un concetto molto importante nel linguaggio C / C ++ è il puntatore. Un puntatore è una variabile che contiene l'indirizzo di un punto in memoria. Essi sono di solito utilizzati per tenere l'indirizzo di un'altra variabile. È possibile eseguire operazioni aritmetiche sui puntatori, come ad esempio invocando l'operatore di incremento. Incrementando un puntatore aumenta il valore dell'indirizzo a cui punta di una cella di memoria. La dimensione esatta della cella di memoria è determinato dal tipo di dati del puntatore. È possibile eseguire i puntatori in una funzione scopo speciale abbastanza facilmente.

istruzione

1 Caricare il C ++ IDE facendo clic sulla sua icona del programma. Quando si apre, selezionare 'File / Nuovo / Progetto' e scegliere '++ Progetto C' per creare un nuovo progetto C ++. Un file di codice sorgente vuoto appare nella parte editor di testo dell'IDE.

2 Creare una funzione che incrementa un puntatore e restituisce il valore incrementato. Questa funzione richiede un puntatore ad un tipo di dati "int" come i suoi argomenti di input e restituisce un puntatore a "int", come la sua uscita. Il puntatore viene incrementato volta nella funzione.

int

ptrIncrement (int PTR)

{Return ++ PTR; }

3 Dichiarare una funzione principale scrivendo le seguenti dichiarazioni:

int main ()

{}

4 Dichiarare un tipo di dati "int" e assegnarle un valore. Posizionare la seguente dichiarazione all'interno delle parentesi graffe della funzione principale:

int x = 4;

5 Creare un puntatore e assegnare l'indirizzo del "int", ha dichiarato nel passaggio precedente. Scrivi la seguente dichiarazione al di sotto della dichiarazione "int":

int* ptr = &x;

6 Stampate l'indirizzo originale del puntatore scrivendo la seguente dichiarazione al di sotto della dichiarazione creazione puntatore:

cout << "Original Address: " << ptr << endl;

7 Incrementa il puntatore chiamando la funzione "ptrIncrement." Scrivi la seguente sotto la dichiarazione di stampa dal passaggio precedente:

ptr = ptrIncrement(ptr);

8 Stampate il nuovo indirizzo del puntatore. Scrivere le seguenti sotto l'istruzione scritta nel passaggio precedente:

cout << "Incremented Address: " << ptr << endl;

9 Eseguire il programma premendo il tasto verde "Play" nella parte superiore della IDE. Il programma stampa due linee, illustrando come il puntatore è stato incrementato. Il puntatore viene incrementato di una cella di memoria di tipo "int", che, su alcuni computer, equivale ad un aumento di 4. Questo è perché tipi di dati "INT" occupa 4 byte di memoria (o 32 bit). L'uscita esatta varia a seconda della macchina, ma sarà simile a questa:

Indirizzo originale: 0x22ff44

Incrementato Indirizzo: 0x22ff48