Heim >Backend-Entwicklung >C++ >Können Sie Variablen verschiedener Datentypen in einer C-for-Schleife initialisieren?
Variablentypen in der for-Schleifeninitialisierung mischen
In C kann man Variablen unterschiedlicher Datentypen im Initialisierungsteil einer for-Schleife deklarieren ? Zum Beispiel:
for (int i = 0, j = 0; ...
Kann diese Syntax geändert werden, um eine Ganzzahl (int) neben einem Zeichen (char) zu initialisieren? Wenn ja, wie wird dies erreicht?
Antwort:
Die direkte Deklaration von Variablen unterschiedlichen Typs innerhalb des Initialisierungsteils einer for-Schleife ist nicht möglich. Es gibt jedoch eine technische Problemumgehung, deren praktischer Nutzen jedoch fraglich ist:
for (struct { int a; char b; } s = { 0, 'a' }; s.a < 5; ++s.a) { std::cout << s.a << " " << s.b << std::endl; }
Diese Methode verwendet eine Struktur, um eine einzelne Entität mit einem Ganzzahl- und einem Zeichenelement zu erstellen, was deren gleichzeitige Initialisierung ermöglicht.
Das obige ist der detaillierte Inhalt vonKönnen Sie Variablen verschiedener Datentypen in einer C-for-Schleife initialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!