comment placer des tableaux en paramètre et les retourner? - C++ - Programmation
Marsh Posté le 05-12-2005 à 17:31:56
on ne peut pas passer de tableau en paramètre d'une fonction (ni même en type de retour), ca passe par des pointeurs mais la syntaxe te le cache.
Mais ... En quoi cela te pose-t-il problème ?
Marsh Posté le 06-12-2005 à 14:24:32
tu fais
float tab1[50];
float tab2[50];
tab1 est en fait une adresse (un pointeur), *tab1 est equivalent à tab1[0].
donc si tu declare ta fonction comme ca :function(float * pointeurTab1, float * pointeurTab2)
tu pourras faire function(tab1,tab2) directement et ta function pourra modifier tes tableaux , par contre je te conseille de passer les longueurs des tableau en parametre en + des pointeurs car tu n'a aucune info la dessus avec juste un pointeur,
void function(float * pointeurTab1, float * pointeurTab2, int nbElement1, int nbElement2)
Marsh Posté le 06-12-2005 à 14:43:09
POINTEUR != TABLEAU
Au pire fais ça , au moi c'est propre :
Code :
|
Marsh Posté le 09-12-2005 à 10:45:26
mais comment je fais pr recuperer mes donnees pour effectuer ma fft dessus si je peux ni mettre de tableau en parametre ni les retourner? les pointeurs servent a pointer des tableaux, non?
Marsh Posté le 09-12-2005 à 10:49:11
j'ai fais ca:
*
Code :
|
Marsh Posté le 09-12-2005 à 12:31:00
relis la doc sur les vectors
(edit : typo )
Marsh Posté le 05-12-2005 à 14:21:31
bonjour a tous,
voici mon algo:
void init_spectre (float signal_disret[N], float spectre [N][2])
fonction qui initialise les 2 tableaux.
signal_discret : valeur cherchée ds un fichier wave
spectre : initialisé a 0
petite précision:
le 1er tableau, je l'utilise dans une autre fonction qui effectue un calcul de FFT (d'ou le fait que je veuille le retourner) et le 2e est mon résultat
comment dois-je faire?
merci a tous