2016-07-27 46 views
0
struct ArrayQueue *Q = (struct ArrayQueue*)malloc(sizeof(struct ArrayQueue)); 

vsWas ist der Unterschied zwischen:

struct ArrayQueue *Q = malloc(sizeof(struct ArrayQueue)); 

Ich bin etwas verwirrt, was zu verwenden, wann und genau das, was Unterschied tun sie tragen? Intuitiv empfinde ich die erste Verwendung, wenn ich innerhalb einer Funktion schreibe und die zweite, wenn ich innerhalb einer Struktur schreibe.

+0

Schreiben Sie in C? – yellowantphil

+0

Ja, ich schreibe in C. –

+0

Beide Anwendungen wurden von Narsimha Karumanchi in seinem Buch verwendet ... –

Antwort

0

Standardmäßig gibt die Funktion malloc ein void * zurück. Obwohl Sie nicht explizit auf den gewünschten Typ umwandeln müssen (der Compiler wird das tun), gibt es Programmierer, die das klarer machen möchten.

Das hängt von Ihrem Codierungsstil ab, beide sind akzeptabel.

Verwandte Themen