Maison >développement back-end >C++ >La taille de l'opérateur en C est-elle évaluée au moment de la compilation ou de l'exécution ?
Le temps d'évaluation de la taille de l'opérateur en C dépend-il de la machine ?
La taille de l'opérateur en C calcule la taille d'un type de données ou variable, mais le résultat dépend-il de la machine sur laquelle le code est compilé ou sur laquelle le fichier exécutable est exécuté ?
Temps d'évaluation de sizeof
La réponse à cette question la question est non. Contrairement à certains autres opérateurs, l'évaluation de sizeof a lieu au moment de la compilation. Cela signifie que le compilateur détermine la taille du type de données ou de la variable lorsque le programme est compilé, et non lorsqu'il est exécuté.
Par exemple, considérons l'extrait de code suivant :
<code class="cpp">sizeof(short int)</code>
Le résultat de cet extrait de code sera le même quelle que soit la machine qui le compile ou exécute l'exécutable. En effet, le compilateur déterminera la taille du type de données short int lors de la compilation, qui est généralement de 2 octets. Le fichier exécutable contiendra simplement ces informations, et la taille réelle du short int sur la machine sur laquelle le programme est exécuté n'affectera pas le résultat.
Par conséquent, le temps d'évaluation de l'opérateur sizeof en C est déterminé à au moment de la compilation, pas au moment de l'exécution.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!