Was stellt ein Typ gefolgt von _t (Unterstrich-t) dar?
Während ich meine IDE (Xcode) eintippe, zeigt die automatische Vervollständigung bereits definierte Wörter an, wenn ich gerade dabei bin, einen Variablennamen einzugeben. Ich sehe gelegentlich Namen, die ‘_t“ am Ende von ihnen.
Was ist das für eine Namenskonvention und was bedeutet sie?
Gibt es ein Referenzdokument, um allgemein gebräuchliche Prä- und Postfixes nachzuschlagen?
Bei der Suche mit dem Begriff „postfix“ bekomme ich viel GoogleNoise über den gleichnamigen Mailserver.
Duplizieren: stackoverflow.com/questions/231760/…
– Corbin März
8. September 2009 um 0:47 Uhr
Dies ist eine zweiteilige Frage, aber jeder hängt sich beim ersten Teil auf.
– willc2
8. September 2009 um 1:00 Uhr
bearbeitete Frage, um das klarer zu machen.
– willc2
8. September 2009 um 1:03 Uhr
Der zweite Teil kann mit “C Standard” und POSIX beantwortet werden (vgl opengroup.org/onlinepubs/9699919799/toc.htm) und die Handbuchseiten Ihres Systems. AFAICR, Microsoft verwendet die ‘_t’-Konvention nicht in seinem eigenen Code, außer wenn es einem Standard folgt (oder zumindest ist es keine so weit verbreitete Konvention in Windows wie in der Unix/Linux-Welt).
– Jonathan Leffler
8. September 2009 um 1:03 Uhr
Schnellste Schließer im Westen 🙁
– willc2
8. September 2009 um 1:04 Uhr
Das t steht für „type“ oder „typedef“. Sie werden viele POSIX-Header (und andere) mit sehen time_t, size_t, und andere. Diese enthalten (nicht unbedingt definierte) spezifische Bitgrößen basierend auf dem Betriebssystem und der Maschinenarchitektur.
Auch in Standard-C: size_t, wchar_t, wint_t, clock_t, ganz zu schweigen von den ganzzahligen Typen wie int8_t, uint16_t, … Eigentlich sind alle in der Antwort erwähnten ‘POSIX’-Typen zuerst im C-Standard und nur sekundär definiert in POSIX (weil es den C-Standard verwendet). Es gibt auch viele POSIX-only-Typen, die auf ‘_t’ enden: ino_t, dev_t erscheinen in <sys/stat.h>zum Beispiel, und gid_t, uid_t, mode_t und …
– Jonathan Leffler
8. September 2009 um 0:57 Uhr
Basierend auf meiner eigenen Erfahrung bedeutet das Postfix “_t” “Datentyp”. Mit anderen Worten, es ist ein vom Datentyp definierter verwendeter Typedef.
Das Suffix „_t“ ist eine Konvention für Datentypnamen wie z size_t oder wchar_t. Es wird nicht konsequent verwendet.
Ich glaube die _t Suffix war größtenteils POSIX, aber dann entschied sich ANSI, einige POSIX-Funktionen als irgendwie wichtig zu integrieren. Ich bin mir da nicht sicher, aber der erste POSIX-Standard wurde 1988 veröffentlicht, also passierten sie definitiv ungefähr zur gleichen Zeit.
– Chris Lutz
8. September 2009 um 0:57 Uhr
Der erste C-Standard wurde 1989 veröffentlicht, war aber ein oder zwei Jahre früher weitgehend fertig, als das (ANSI) C-Standardkomitee versuchte, eine endgültige Einigung über die I18N/G11N/L10N-Aspekte des Standards zu erzielen – insbesondere . Aber Sie haben Recht – die (IEEE) POSIX- und C-Standards wurden fast gleichzeitig entwickelt. Der ISO POSIX-Standard wurde erstmals 1990 veröffentlicht, im selben Jahr wie ISO C, IIRC.
– Jonathan Leffler
8. September 2009 um 1:00 Uhr
12663300cookie-checkWofür steht das Postfix “_t” in C? [duplicate]yes
Duplizieren: stackoverflow.com/questions/231760/…
– Corbin März
8. September 2009 um 0:47 Uhr
Dies ist eine zweiteilige Frage, aber jeder hängt sich beim ersten Teil auf.
– willc2
8. September 2009 um 1:00 Uhr
bearbeitete Frage, um das klarer zu machen.
– willc2
8. September 2009 um 1:03 Uhr
Der zweite Teil kann mit “C Standard” und POSIX beantwortet werden (vgl opengroup.org/onlinepubs/9699919799/toc.htm) und die Handbuchseiten Ihres Systems. AFAICR, Microsoft verwendet die ‘_t’-Konvention nicht in seinem eigenen Code, außer wenn es einem Standard folgt (oder zumindest ist es keine so weit verbreitete Konvention in Windows wie in der Unix/Linux-Welt).
– Jonathan Leffler
8. September 2009 um 1:03 Uhr
Schnellste Schließer im Westen 🙁
– willc2
8. September 2009 um 1:04 Uhr