Die Unterscheidung zwischen „register“ und „int“ in C
Beim Deklarieren einer Variablen in C können Entwickler die Funktion „register“ verwenden. Schlüsselwort, um dem Compiler mitzuteilen, dass sich eine bestimmte Variable in einem Prozessorregister und nicht im Speicher befinden sollte. Betrachten Sie beispielsweise den folgenden Code:
int x = 7;
und:
register int x = 7;
Der Unterschied zwischen den beiden Beispielen liegt in der Verwendung des Schlüsselworts „register“. Im ersten Fall wird die Variable „x“ als Ganzzahl deklariert und befindet sich im Speicher. Im zweiten Fall suggeriert das Schlüsselwort „register“ dem Compiler, dass es von Vorteil wäre, „x“ in einem Prozessorregister zu speichern.
Es ist jedoch wichtig zu beachten, dass es im Ermessen des Compilers liegt, dies zu ignorieren Anregung. Wie Herb Sutter in „Keywords That Aren't (or, Comments by Another Name)“ feststellt:
„Ein Registerspezifizierer hat die gleiche Semantik wie ein Autospezifizierer …“
In Mit anderen Worten, die Verwendung von „register“ weist den Compiler lediglich an, „x“ auf ähnliche Weise wie das Schlüsselwort „auto“ zuzuweisen, was keine spezifischen Auswirkungen auf den Speicherort der Variablen hat. Während „register“ eine Bevorzugung der Registerspeicherung vermittelt, liegt die tatsächliche Implementierung im Ermessen des Compilers.
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen \'register\' und \'int\' in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!