Maison > développement back-end > C++ > C vs C : Quelle est la différence entre `void foo()` et `void foo(void)` ?

C vs C : Quelle est la différence entre `void foo()` et `void foo(void)` ?

DDD
Libérer: 2024-12-17 02:37:25
original
113 Les gens l'ont consulté

C vs. C  : What's the Difference Between `void foo()` and `void foo(void)`?

Prototypes de fonctions en C et C : void foo() vs. void foo(void)

En C, la syntaxe d'une fonction prototype comprend un mot-clé void suivi du nom de la fonction et des parenthèses. Deux variantes courantes sont :

  • void foo()
  • void foo(void)

L'utilisation de void foo(void) en C implique que la fonction ne prend aucun argument, tandis que void foo() signifie un nombre non spécifié d'arguments de types non spécifiés.

En C , cependant, void foo() et void foo(void) indiquent une fonction sans argument. Cette distinction est due à des raisons historiques et a été faite pour aligner C avec d'autres langages tels que Java.

Bien que les deux formes soient techniquement valides en C , la convention est d'utiliser void foo() sans l'argument void redondant pour clarté. L'écriture de void foo(void) n'est pas considérée comme une erreur, mais elle ne fournit aucune information supplémentaire et peut prêter à confusion pour certains lecteurs.

De plus, spécifier void avant le nom de la fonction en C peut faciliter la compatibilité entre langues lorsque interfaçage avec le code C. En utilisant void foo(void), les développeurs peuvent garantir une interprétation cohérente de la signature de fonction dans les deux langages, facilitant ainsi la maintenance et la portabilité 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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal