Difference entrer v[] et v[5] en c++
Résolu
Bonjour,
c'est koi la difference entre une la fonction
void tri (float v[] , int n )
et la fonction
void tri(float v[5],int n) <=-- es ce que cette fonction est valide? ou c'est la memme chose que la premiere ???
P.S : le langague est le c++
c'est koi la difference entre une la fonction
void tri (float v[] , int n )
et la fonction
void tri(float v[5],int n) <=-- es ce que cette fonction est valide? ou c'est la memme chose que la premiere ???
P.S : le langague est le c++
3 réponses
-
Le plus "clair" et le plus "propre", à mon humble avis, c'est :
void tri (float v[] , int n)
-
donc il est plus conseiller de faire de cette facon? ....merci
void tri(float v[5],int n)-
ContributeurNon, cela ne générera pas de warning car c'est standard.
Le compilateur ignore purement et simplement la dimension pour un tableau une dimension. De même manière tu peux mettre : void tri (float *v, int n) puisque le compilateur transformera ton tableau en un pointeur sur le premier du tableau.
-
-
Bonsoir,
Oui, c'est valide, mais déconseillé comme syntaxe (peut parfois générer un warning).
Le compilateur n'utilise pas l'information 'taille' que tu lui indique (en l'occurrence ici 5).
Le code suivant compilera sans erreurs :void tri(float v[5],int n) { // code de tri ... } float a[10] ; float b[2] ; // initialisations et autres traitements ... tri(a, 10) ; tri(b, 2) ; ...
Comme il s'agit d'une fonction de tri, qui prend en paramètre des tableaux de diverses longueurs, la syntaxe la plus propre reste la première :
void tri (float v[] , int n)
J'espère que c'est un peu plus clair :)