Maison > développement back-end > C++ > Quand les parenthèses sont-elles autorisées dans les déclarations de variables en C ?

Quand les parenthèses sont-elles autorisées dans les déclarations de variables en C ?

Mary-Kate Olsen
Libérer: 2024-11-01 03:13:27
original
463 Les gens l'ont consulté

When are Parentheses Allowed in Variable Declarations in C  ?

Déclaration de variable avec parenthèses dans la norme C

Dans le domaine de la programmation C, le # Quelle partie de la norme C autorise déclarer une variable entre parenthèses ? une question se pose, laissant de nombreux programmeurs perplexes. Cet article met en lumière cette syntaxe déroutante en examinant les profondeurs du standard C et en dévoilant la logique cachée.

Le standard C élucide ce comportement intrigant dans [dcl.meaning]. Selon cette section, une déclaration de la forme T D, où D prend la forme ( D1 ), conserve le type de l'identifiant du déclarant dans la déclaration contenue T D1. Surtout, les parenthèses ne modifient pas le type de l'identifiant du déclarant encapsulé mais peuvent influencer la liaison des déclarateurs complexes.

En substance, vous pouvez mettre n'importe quel « déclarateur » entre parenthèses conformément à la grammaire C. D'une manière générale, un déclarateur est un composant d'une déclaration qui exclut les spécificateurs et types initiaux et encapsule un seul nom.

Prenons l'exemple fourni : int(s). Ici, s représente un déclarateur. Par conséquent, le mettre entre parenthèses ne modifie pas sa signification ou sa substance.

Cette règle revêt une importance particulière dans des scénarios plus complexes. Par exemple, considérons ce qui suit :

int * a [10]; // a is an array of ten pointers to int.
int ( * b ) [10]; // b is a pointer to an array of ten ints.
Copier après la connexion

Ici, les parenthèses jouent un rôle essentiel dans la différenciation entre les deux déclarations. Sans eux, vous pourriez interpréter à tort b comme un tableau de dix pointeurs vers int, mais les parenthèses précisent que b est, en fait, un pointeur vers un tableau de dix valeurs int.

En conclusion, la norme C s'adapte aux déclarations de variables entre parenthèses, permettant aux programmeurs de naviguer dans les liaisons de déclarateurs complexes et de maintenir la clarté du code.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal