Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> C /C + + Programming >> .

Come utilizzare i puntatori void in C

Puntatori sono uno dei più potenti - e più difficile - le caratteristiche del linguaggio di programmazione C . Quando si lavora con i puntatori , è spesso necessario per la conversione tra diversi tipi di puntatori . A volte, è possibile convertire direttamente da un tipo ad un altro, ma spesso , soprattutto in programmi complessi , potrebbe essere necessario memorizzare un puntatore che è stato convertito da un tipo , ma non è ancora stato convertito in un altro tipo di puntatore. In questo caso , avrete bisogno di usare un puntatore nullo , il che rappresenta un puntatore senza tipo a tutti. Cose che ti serviranno
C compiler
C programma
Mostra più istruzioni
1

dichiarare il vostro puntatore nullo . Per effettuare una variabile globale o locale, o in un campo in una struttura , scrivere " void * p; " su una riga vuota all'interno della funzione o la struttura associata, o al di fuori di tutte le funzioni e le strutture per rendere più globale. Per aggiungere un argomento puntatore nullo a una funzione , scrivere " void * p" nella lista degli argomenti della funzione. In entrambi i casi , è possibile sostituire la lettera " p" con qualsiasi nome di variabile di vostra scelta .
2

memorizzare un valore nella variabile puntatore nullo . Se hai fatto una variabile locale o globale , basta scrivere " p = (void *) x ; " . Sostituire " x " con il nome del puntatore tipizzato vuoi convertire a un puntatore nullo . Se hai fatto un campo di struttura , scrivere "sp = (void *) x ; " . Sostituire " s " con il nome della struttura e " x " con il nome del puntatore . Se hai fatto un argomento di funzione , richiamare la funzione in questo modo: "f ( (void * ) x ) " . Sostituire "f" con il nome della funzione e la " x " con il nome del puntatore .
3

Per leggere il valore del puntatore nullo e riconvertirlo in un puntatore tipizzato , scrivere " x = ( tipo * ) p; " , dove " x " è il puntatore tipizzato , "p" è il puntatore nullo e "Tipo" è il tipo originale del puntatore è memorizzato in " p" . Prestare attenzione per ottenere il tipo corretto , in quanto il compilatore C sarà doverosamente convertire il puntatore a qualsiasi tipo di chiedere , se lei ha ragione o no. Questo può portare a bug sottili che sono difficili da risolvere .

 

Programmazione © www.354353.com