L' typeof
de l'opérateur dans la plaine C (pas C++) est un CCG plus de la norme. Il indique au compilateur que vous souhaitez utiliser le type de l'expression placée entre parenthèses.
À l'aide de typeof
comme ci-dessus, vous pouvez déclarer des variables de types inconnus de vous, ou, dans ce contexte, en utilisant une autre variable de type référence. Il peut également être utilisé pour le moulage.
Edit: l' +
fonctionnement à l'intérieur typeof
ont un sens différent. typeof((c) + 1)
signifie "le type de c, ou le type de 1, selon le restent après la promotion". Rappelez-vous que, par exemple, les caractères sont promus à ints lorsque utilisé dans les opérations impliquant entiers, entiers sont promus à des flotteurs, de flotteurs pour les doubles, etc.
Notez que seul le compilateur peut résoudre ce problème: typeof
n'est pas évalué, il n'a pas de valeur, rien ne se passe au moment de l'exécution.
La description complète de typeof
peut être trouvé ici.