Heim >Backend-Entwicklung >C++ >Wie kann ich ein kurzes Literal in C schreiben?
Kurze Literale in C schreiben
In C gibt es vordefinierte Literale für verschiedene Datentypen, wie zum Beispiel int, long und double. Allerdings gibt es für die Abkürzung kein dediziertes Literal. Um ein kurzes Literal zu schreiben, können Sie eine Umwandlung verwenden, wie unten gezeigt:
<code class="cpp">((short)2) // This assigns the short literal value 2 to a variable of type short</code>
Obwohl es sich nicht um ein explizites kurzes Literal handelt, verhält sich dieser Ansatz ähnlich und weist einer Variablen effektiv einen kurzen Wert zu.
Obwohl es keine direkte Kurzliteral-Notation gibt, optimiert der Compiler den Code normalerweise so, dass er die umgewandelte Ganzzahl als Kurzzahl behandelt, ohne dass ein erheblicher Leistungsaufwand entsteht. Zum Beispiel der folgende Code:
<code class="cpp">short a = 2L; float b = 2.0; short c = (short)2; char d = '';</code>
Ergibt beim Kompilieren und Disassemblieren den folgenden Maschinencode:
movl , _a movl , _b movl , _c movl , _d
Dies zeigt an, dass der Compiler allen vier direkt den Wert 2 zugewiesen hat Variablen, unabhängig von ihrem Datentyp. Daher müssen Sie sich keine übermäßigen Gedanken über Auswirkungen auf die Leistung machen, wenn Sie diesen Casting-Ansatz zum Schreiben kurzer Literale verwenden.
Das obige ist der detaillierte Inhalt vonWie kann ich ein kurzes Literal in C schreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!