Comment Array[100] = {0} définit les éléments sur zéro
En C et C, initialiser un tableau avec un seul la valeur entre accolades initialise les éléments non initialisés à une valeur par défaut. Dans le cas d'un tableau de caractères (par exemple, char array[100] = {0}), le compilateur définit les éléments sur le caractère de fin nul (' ').
Initialisation interne du compilateur
En C, le compilateur initialise les types primitifs (y compris les pointeurs) à zéro. Pour les types de données agrégées (comme les tableaux), il applique cette règle de manière récursive à tous les éléments.
En C , le compilateur initialise par agrégation les éléments non initialisés des tableaux. L'initialisation globale définit les éléments sur les valeurs par défaut de leurs types respectifs. Pour les types primitifs, c'est zéro.
Liste d'initialisation vide
C prend également en charge l'initialisation globale avec une liste d'initialisation vide (char array[100] = {}). Dans ce cas, le compilateur initialise tous les éléments du tableau à leurs valeurs par défaut.
Code généré par le compilateur
Le code assembleur spécifique généré par le compilateur variera en fonction sur les paramètres de la plateforme et du compilateur. Cependant, généralement, le compilateur initialisera chaque élément du tableau individuellement à l'aide d'une instruction dédiée.
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!