Maison  >  Article  >  développement back-end  >  Les arguments « main » en C peuvent-ils être modifiés avec « unsigned » et « const » ?

Les arguments « main » en C peuvent-ils être modifiés avec « unsigned » et « const » ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-28 19:51:02471parcourir

Can `main` Arguments in C   Be Modified with `unsigned` and `const`?

Personnalisation des arguments de main en C

Les signatures par défaut de main en C sont bien connues : int main() et int main (int, char*[]). Cependant, une question se pose :

Les arguments de main peuvent-ils être modifiés avec des qualificatifs comme unsigned et const ?

Mes tests indiquent oui, mais des inquiétudes subsistent quant à une éventuelle surcharge ou violation de Normes C.

Selon la norme C 98 (section 3.6.1 paragraphe 2), la surcharge des canalisations est interdite. La norme indique explicitement que main doit avoir un type de retour int, mais ses autres aspects sont définis par l'implémentation.

Notamment, la norme n'interdit pas l'utilisation d'arguments avec des qualificatifs comme unsigned et const. Bien que cela ne soit pas obligatoire par la norme, il est permis aux implémentations d'accepter ces modifications.

Les environnements autonomes, où les comportements de démarrage et de fin sont définis par l'implémentation, sont exemptés de ces règles et la documentation peut détailler des comportements spécifiques.

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!

Déclaration:
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