Ich bin nicht am Computer, kann das im Moment nicht testen, habe aber einen Code, den ich überprüfen kann. Ich bin leider immer noch etwas in einem C ++ - Gedankenframe.
Also, wenn ein typedef in einer C-Quelldatei deklariert ist, welchen Umfang hat es? Mir ist bewusst, dass Funktionen und Variablen, die nur innerhalb derselben Übersetzungseinheit verfügbar sind, statisch gemacht werden müssen und ich frage mich, ob das für typedefs dasselbe ist.
Typedefs sind Deklarationen. Wenn Sie eine typedef in einer C-Datei haben, wird dies keiner anderen C-Datei bekannt sein, da sie unabhängig voneinander kompiliert werden.
Für einen Typdef in einer Kopfzeile wird es natürlich von allen C-Dateien sichtbar sein, die es enthalten.
Ich weiß nicht, was die Bedeutung dieses komplexen Satzes ist, aber so definiert der C-Standard den Umfang von typedefs:
Als Sonderfall wird ein Typname (der keine Deklaration eines Bezeichners ist) berücksichtigt habe einen Bereich, der direkt nach dem Ort innerhalb des Typnamens beginnt, wo der weggelassen wurde Bezeichner würde erscheinen, wenn er nicht weggelassen wird.
P.S. Jemand bitte erklären.
Tags und Links c