Maison > développement back-end > C++ > Comment transmettre correctement des tableaux par référence en C ?

Comment transmettre correctement des tableaux par référence en C ?

Linda Hamilton
Libérer: 2024-11-29 01:14:10
original
867 Les gens l'ont consulté

How Do I Correctly Pass Arrays by Reference in C  ?

Passage de tableaux par référence en C

En C , les tableaux sont passés par référence par défaut. Cependant, la syntaxe pour ce faire peut prêter à confusion pour certains programmeurs.

L'utilisation de la syntaxe :

void foo(double& *bar)
Copier après la connexion

pour passer un tableau par référence n'est pas autorisée en C . Utilisez plutôt cette syntaxe :

void foo(double (&bar)[10])
{
}
Copier après la connexion

Cela évite les erreurs potentielles en limitant la taille du tableau à exactement 10.

Pour transmettre un tableau de taille arbitraire par référence, utilisez une fonction de modèle qui capture la taille au moment de la compilation :

template<typename T, size_t N>
void foo(T (&bar)[N])
{
    // Size of bar is N
}
Copier après la connexion

Pour une meilleure lisibilité et fonctionnalité du code, pensez à utiliser std::vector ou std::array au lieu de raw tableaux.

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 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