Rechercher : dans
Par :

Passage des parametres a une fonction en c++

Dernière réponse le 23 nov 2008 à 20:09:13 asma sisi, le 23 nov 2008 à 18:53:11 
 Signaler ce message aux modérateurs

Bonjour,
je suis étudiante en deuxième année licence informatique (LMD) et on étudie on fait notre programmation avec le c++; ma question est
Lors du passage d'un tableau comme paramètre a une fonction on a deux façon l'une que je la maitrise est introduite sous cet exemple:
méthode 1:
#include<iostream>
void fct (int*t,......)
{
/* le t est un pointeur vers un entier qui est le premier élément du tableauet pour manipuler les autres cases du tableau en met *(t+i) tel que i est l'indice de la case voulu*/
.........
}
int main()
{
int tab[30];
....
........
/*l'appelle de la fct avec notre tableau déclaré dans le main*/

fct (tab,.....);
/*alors on va copier l'adresse du premier élément du tableau tab dans l'argument t de fct qui est (t un pointeur de ) */
}
méthode 2:
cet méthode consiste a mettre ca:

#include<iostream>
void fct (int t[],......)
{
.........
}
int main()
{
int tab[30];
........
/*l'appelle de la fct avec notre tableau déclaré dans le main*/

fct (tab,.....);
}
ma question est :
dans la deuxième méthode on va copier l'adresse du premier élément du tableau dans l'argument de la fonction fct qui doit être un pointeur mais dans l'argument de fct en a mis int tab[] et moi je pense que le type doit être int*
Si vous pouvez m'expliquer ou peut être me corriger
je m'excuse de la longueur du message et peut être des fautes
cordialement sisi
}

Configuration: Windows XP
Firefox 3.0.4

Meilleures réponses pour « passage des parametres a une fonction en c++ » dans :
Les templates en C++ VoirIntroduction Avantages Inconvénients Quand utiliser des templates ? Que dois-je mettre dans les .hpp et dans les .cpp ? Convention de notations Quelques templates célèbres STL BGL Premiers pas Spécifications de templates Template par...
Bash - Les paramètres VoirIntroduction Les paramètres positionnels Exemple 1 Les paramètres spéciaux Exemple 2 Initialiser des paramètres - La commande "set" - Exemples - La commande "shift" - Exemple 3 Introduction Il est possible de fournir à un script,...
Les files en langage C VoirLes files - Premier Entré Premier Sorti Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la file IV. Opérations sur les files A. Initialisation B. Insertion d'un élément dans la file C. Oter un...
Langage C++ - Les fonctions VoirLa notion de fonction On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel de la fonction dans le corps du programme principal. Les fonctions permettent d'exécuter dans plusieurs parties du...
Perl - Les fonctions VoirLa notion de fonction et de procédure On appelle procédure un sous-programme qui permet d'effectuer un ensemble d'instruction par simple appel de la procédure dans le corps du programme principal. Les procédure permettent d'exécuter dans plusieurs...

1

 togodo, le 23 nov 2008 à 20:09:13

Tu t'embrouilles,
dans la définition de la fonction fct : int *a et int a[] signifie la même chose ce sont des pointeurs renvoyant la même adresse,
a[0] renvoie la valeur du premier élément tout comme *a.
a[1] deuxième *(a+1).

On peut utiliser les * ou [] , mais c'est plus évident d'utiliser des [].

Répondre à togodo