Doppelter Zeiger?
-
Hallo zusammen
Versuche mich ein bisschen an der winpcap Bibliothek.
Wenn pkt_data den Datentyp const unsigned char** pkt_data besitzt, dann kann ja pkt_data nicht mehr verändert werden, oder?
// Start router while((res = pcap_next_ex( fp, &header, &pkt_data)) >= 0) { // Timeout elapsed if(res != 0) { ... ... ...
Blick nicht mehr durch....
-
Nein, das const bezieht sich auf das unsigned.
const unsigned **
ist ein Zeiger auf ein Zeiger auf einen konstanten unsigned. Ein konstanter Zeiger auf einen Zeiger auf unsigned wäreunsigned **const
.Die Regel ist, von rechts nach links zu lesen. Zum Beispiel
unsigned * const *
: Das ist ein Zeiger () auf einen konstanten (const) Zeiger () auf unsigned. Das geht so lange gut, bis man ganz links ist, wo eben oftconst unsigned **
geschrieben wird, obwohlunsigned const **
genau das gleiche wäre und gleichzeitig zu der von-rechts-nach-links-Regel passen würde.Siehe auch:
http://http://cdecl.ridiculousfish.com
-
Danke