Was ist der Unterschied zwischen lokalen Variablen auto int a und int?
Use-case-storage-class-identifier auto?Ich verstehe, dass alle lokalen Variablen, die automatisch standardmäßig. Aber was macht den Unterschied durch das schreiben explizit auto int a ?
- Mögliche Duplikate von Wo ist der C-auto-Schlüsselwort verwendet?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es keine streng Unterschied.
und
gleichwertig sind.
Gängige Praxis ist, nicht zu den
auto
Planer.auto
" bedeutet "nichtstatic
", welches auch der Standard ist. Es hatte mehr Einfluss in seinem Vorgänger B. en.wikipedia.org/wiki/B_(programming_language)Gibt es zwei mögliche Fälle:
auto
ist der Standard und explizit durch hinzufügen des Schlüsselworts leistet nichts,auto
ist nicht erlaubt (z.B. auf Globale variable), in dem Fall hinzufügenauto
verhindert, dass der code aus kompilierenauto
für eine Globale variable ist, der code nicht kompilieren (mit einem gut funktionierenden compiler, sowieso). So weit wie "was ist der use-case", mein Punkt ist, dass es keines gibt.In der modernen C (C89, C99, C11), die
auto
keyword überflüssig ist. Anders als die explizite Absicht ("Dies ist eine nicht-statische variable, und das meine ich auch!"), es dient nicht mehr jeden Zweck. Es ist ein überbleibsel C Geschichte, über die aus B, sondern ähnlich wie dieentry
keyword hat sich praktisch obsolet.Habe ich es einmal in meinem Leben. Es war ein IOCCC-Eintrag in Verbindung mit impliziten int:
Gibt es wenig Unterschied zwischen einer lokalen variable und automatische variable.
für auto-Variablen.
für die Lokale variable.