Maison > Article > développement back-end > Est-ce que `sizeof(short int)` dépend du compilateur ou de la machine exécutant le code ?
La taille de l'opérateur est-elle évaluée au moment de la compilation ou de l'exécution ?
Lorsqu'il s'agit de la taille de l'opérateur en C , il est important de comprendre son temps d'évaluation .
Question :
Dans l'extrait de code suivant, le résultat de sizeof(short int) dépend-il de la machine sur laquelle le compilateur s'exécute ou de la machine sur laquelle l'exécutable le fichier s'exécute ?
<code class="cpp">sizeof(short int)</code>
Réponse :
sizeof est un opérateur de compilation, ce qui signifie qu'il est évalué pendant le processus de compilation avant le programme est exécuté. Il détermine la taille d'un type de données ou d'un objet, et ces informations sont ensuite utilisées par le compilateur pour générer le code exécutable final.
Par conséquent, le résultat de sizeof(short int) sera le même quel que soit la machine sur laquelle s'exécute le compilateur ou le fichier exécutable. La taille d'un type de données est prédéfinie et ne change pas en fonction de l'environnement d'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!