Accueil > Forum > > > > creer une fonction retournant un tableau
creer une fonction retournant un tableau
mercredi 13 août 2003 à 17:03:35 |
creer une fonction retournant un tableau

billcala
|
j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : int mafonction()[8]; using namespace std; int mafonction() { int kaboum[8]={1,2,3,4,5,6,7,8}; cout<<"Kaboum 4 : "<<kaboum[4]; return kaboum[]; } int main() { int tableau[8]; tableau=mafonction; system("PAUSE"); return 0; } devc++ me renvoie : `mafonction' declared as function returning an array comment faire??? merci!
|
|
mercredi 13 août 2003 à 17:52:47 |
Re : creer une fonction retournant un tableau

HCJarod
|
Essai ça et tiens moi au courant pas le temps de tester mais à priori.. int* mafonction(); using namespace std;
int mafonction() { int kaboum[8]={1,2,3,4,5,6,7,8}; cout<<"Kaboum 4 : "<<kaboum[4]; return kaboum; }
int main() { int tableau[8]; tableau=mafonction;
system("PAUSE"); return 0; }
a+
------------------------------- Réponse au message : -------------------------------
> j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : > > > int mafonction()[8]; > using namespace std; > > int mafonction() > { > int kaboum[8]={1,2,3,4,5,6,7,8}; > cout<<"Kaboum 4 : "<<kaboum[4]; > return kaboum[]; > } > > > int main() > { > int tableau[8]; > tableau=mafonction; > > system("PAUSE"); > return 0; > } > > > > devc++ me renvoie : `mafonction' declared as function returning an array > > > comment faire??? > merci!
|
|
mercredi 13 août 2003 à 17:57:39 |
Re : creer une fonction retournant un tableau

HCJarod
|
Une étoile est rester coincer dans le clavier... essai plutot ça...
int* mafonction();//récupère pointeur sur entier using namespace std;
int* mafonction() { int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau cout<<"Kaboum 4 : "<<kaboum[4]; return kaboum;//revoie l'adresse de base de ton tableau }
int main() { int tableau[8]; tableau=mafonction;
system("PAUSE"); return 0; }
le seule question est : est ce que kaboum, variable locale, n'est pas "détruit"? Si oui, tu peux récupérer ton tableau tant qu'il n'a pas été écraser. Vue que je sais pas trop, j'espère qu'un autre répondra à cette intérrogation a+
------------------------------- Réponse au message : -------------------------------
> > Essai ça et tiens moi au courant pas le temps de tester mais à priori.. > int* mafonction(); > using namespace std; > > int mafonction() > { > int kaboum[8]={1,2,3,4,5,6,7,8}; > cout<<"Kaboum 4 : "<<kaboum[4]; > return kaboum; > } > > > int main() > { > int tableau[8]; > tableau=mafonction; > > system("PAUSE"); > return 0; > } > > a+ > > > ------------------------------- > Réponse au message : > ------------------------------- > > > j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : > > > > > > int mafonction()[8]; > > using namespace std; > > > > int mafonction() > > { > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > cout<<"Kaboum 4 : "<<kaboum[4]; > > return kaboum[]; > > } > > > > > > int main() > > { > > int tableau[8]; > > tableau=mafonction; > > > > system("PAUSE"); > > return 0; > > } > > > > > > > > devc++ me renvoie : `mafonction' declared as function returning an array > > > > > > comment faire??? > > merci! >
|
|
mercredi 13 août 2003 à 17:59:01 |
Re : creer une fonction retournant un tableau

billcala
|
ça a l'air mieux mais il me répond maintenant : incompatible types in assignment of `int * ()()' to `int[8]' pour 'tableau=mafonction;'
qu'en penses-tu? merci
------------------------------- Réponse au message : -------------------------------
> > Essai ça et tiens moi au courant pas le temps de tester mais à priori.. > int* mafonction(); > using namespace std; > > int mafonction() > { > int kaboum[8]={1,2,3,4,5,6,7,8}; > cout<<"Kaboum 4 : "<<kaboum[4]; > return kaboum; > } > > > int main() > { > int tableau[8]; > tableau=mafonction; > > system("PAUSE"); > return 0; > } > > a+ > > > ------------------------------- > Réponse au message : > ------------------------------- > > > j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : > > > > > > int mafonction()[8]; > > using namespace std; > > > > int mafonction() > > { > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > cout<<"Kaboum 4 : "<<kaboum[4]; > > return kaboum[]; > > } > > > > > > int main() > > { > > int tableau[8]; > > tableau=mafonction; > > > > system("PAUSE"); > > return 0; > > } > > > > > > > > devc++ me renvoie : `mafonction' declared as function returning an array > > > > > > comment faire??? > > merci! >
|
|
mercredi 13 août 2003 à 18:08:01 |
Re : creer une fonction retournant un tableau

HCJarod
|
decidement je suis pas en forme aujourd'hui, essai ça pour la troisième fois et je pense que c'est la bonne. A demain, j'ai du boulot... int* mafonction();//récupère pointeur sur entier using namespace std;
int* mafonction() { int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau cout<<"Kaboum 4 : "<<kaboum[4]; return kaboum;//revoie l'adresse de base de ton tableau }
int main() { int tableau[8]; strcpy(tableau,mafonction);
system("PAUSE"); return 0; }
a+
------------------------------- Réponse au message : -------------------------------
> Une étoile est rester coincer dans le clavier... > essai plutot ça... > > int* mafonction();//récupère pointeur sur entier > using namespace std; > > int* mafonction() > { > int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau > cout<<"Kaboum 4 : "<<kaboum[4]; > return kaboum;//revoie l'adresse de base de ton tableau > } > > int main() > { > int tableau[8]; > tableau=mafonction; > > system("PAUSE"); > return 0; > } > > le seule question est : est ce que kaboum, variable locale, n'est pas "détruit"? Si oui, tu peux récupérer ton tableau tant qu'il n'a pas été écraser. Vue que je sais pas trop, j'espère qu'un autre répondra à cette intérrogation > a+ > > > ------------------------------- > Réponse au message : > ------------------------------- > > > > > Essai ça et tiens moi au courant pas le temps de tester mais à priori.. > > int* mafonction(); > > using namespace std; > > > > int mafonction() > > { > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > cout<<"Kaboum 4 : "<<kaboum[4]; > > return kaboum; > > } > > > > > > int main() > > { > > int tableau[8]; > > tableau=mafonction; > > > > system("PAUSE"); > > return 0; > > } > > > > a+ > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : > > > > > > > > > int mafonction()[8]; > > > using namespace std; > > > > > > int mafonction() > > > { > > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > > cout<<"Kaboum 4 : "<<kaboum[4]; > > > return kaboum[]; > > > } > > > > > > > > > int main() > > > { > > > int tableau[8]; > > > tableau=mafonction; > > > > > > system("PAUSE"); > > > return 0; > > > } > > > > > > > > > > > > devc++ me renvoie : `mafonction' declared as function returning an array > > > > > > > > > comment faire??? > > > merci! > > >
|
|
mercredi 13 août 2003 à 19:01:46 |
Re : creer une fonction retournant un tableau

Kaid
|
Effectivement le tableau étant alloué statiquement dans le corps d'une fonction, il est détruit quand on sort de cette fonction. Kaid - kaid.fr.st------------------------------- Réponse au message : ------------------------------- > Une étoile est rester coincer dans le clavier... > essai plutot ça... > > int* mafonction();//récupère pointeur sur entier > using namespace std; > > int* mafonction() > { > int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau > cout<<"Kaboum 4 : "<<kaboum[4]; > return kaboum;//revoie l'adresse de base de ton tableau > } > > int main() > { > int tableau[8]; > tableau=mafonction; > > system("PAUSE"); > return 0; > } > > le seule question est : est ce que kaboum, variable locale, n'est pas "détruit"? Si oui, tu peux récupérer ton tableau tant qu'il n'a pas été écraser. Vue que je sais pas trop, j'espère qu'un autre répondra à cette intérrogation > a+ > > > ------------------------------- > Réponse au message : > ------------------------------- > > > > > Essai ça et tiens moi au courant pas le temps de tester mais à priori.. > > int* mafonction(); > > using namespace std; > > > > int mafonction() > > { > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > cout<<"Kaboum 4 : "<<kaboum[4]; > > return kaboum; > > } > > > > > > int main() > > { > > int tableau[8]; > > tableau=mafonction; > > > > system("PAUSE"); > > return 0; > > } > > > > a+ > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : > > > > > > > > > int mafonction()[8]; > > > using namespace std; > > > > > > int mafonction() > > > { > > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > > cout<<"Kaboum 4 : "<<kaboum[4]; > > > return kaboum[]; > > > } > > > > > > > > > int main() > > > { > > > int tableau[8]; > > > tableau=mafonction; > > > > > > system("PAUSE"); > > > return 0; > > > } > > > > > > > > > > > > devc++ me renvoie : `mafonction' declared as function returning an array > > > > > > > > > comment faire??? > > > merci! > > >
|
|
jeudi 14 août 2003 à 00:00:16 |
Re : creer une fonction retournant un tableau

billcala
|
il me renvoie comme message d'erreur au niveau de strcpy : passing `int *' as argument 1 of `strcpy(char *, const char *)'
ouh là,là... c'est compliqué d'initialiser dans une fonction un tableau d'entiers... je vais finir par faire du visual basic...
------------------------------- Réponse au message : -------------------------------
> decidement je suis pas en forme aujourd'hui, essai ça pour la troisième fois et je pense que c'est la bonne. A demain, j'ai du boulot... > int* mafonction();//récupère pointeur sur entier > using namespace std; > > int* mafonction() > { > int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau > cout<<"Kaboum 4 : "<<kaboum[4]; > return kaboum;//revoie l'adresse de base de ton tableau > } > > int main() > { > int tableau[8]; > strcpy(tableau,mafonction); > > system("PAUSE"); > return 0; > } > > a+ > > > ------------------------------- > Réponse au message : > ------------------------------- > > > Une étoile est rester coincer dans le clavier... > > essai plutot ça... > > > > int* mafonction();//récupère pointeur sur entier > > using namespace std; > > > > int* mafonction() > > { > > int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau > > cout<<"Kaboum 4 : "<<kaboum[4]; > > return kaboum;//revoie l'adresse de base de ton tableau > > } > > > > int main() > > { > > int tableau[8]; > > tableau=mafonction; > > > > system("PAUSE"); > > return 0; > > } > > > > le seule question est : est ce que kaboum, variable locale, n'est pas "détruit"? Si oui, tu peux récupérer ton tableau tant qu'il n'a pas été écraser. Vue que je sais pas trop, j'espère qu'un autre répondra à cette intérrogation > > a+ > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > > > > Essai ça et tiens moi au courant pas le temps de tester mais à priori.. > > > int* mafonction(); > > > using namespace std; > > > > > > int mafonction() > > > { > > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > > cout<<"Kaboum 4 : "<<kaboum[4]; > > > return kaboum; > > > } > > > > > > > > > int main() > > > { > > > int tableau[8]; > > > tableau=mafonction; > > > > > > system("PAUSE"); > > > return 0; > > > } > > > > > > a+ > > > > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : > > > > > > > > > > > > int mafonction()[8]; > > > > using namespace std; > > > > > > > > int mafonction() > > > > { > > > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > > > cout<<"Kaboum 4 : "<<kaboum[4]; > > > > return kaboum[]; > > > > } > > > > > > > > > > > > int main() > > > > { > > > > int tableau[8]; > > > > tableau=mafonction; > > > > > > > > system("PAUSE"); > > > > return 0; > > > > } > > > > > > > > > > > > > > > > devc++ me renvoie : `mafonction' declared as function returning an array > > > > > > > > > > > > comment faire??? > > > > merci! > > > > > >
|
|
jeudi 14 août 2003 à 00:21:04 |
Re : creer une fonction retournant un tableau

aardman
|
Salut, bon... 1) strcpy : seulement pour chaine de caracteres terminées par null, surtout pas int ou autre. 2) tu ne peux pas retourner le tableau créé dans 'mafonction', car comme Kaid l'a dis plus haut, ton tableau n'est accessible que depuis la fonction.
Moi je te donne une version avec pointeurs... la fonction ne retourne pas un tableau, mais elle remplie 'tableau' avec les valeurs de 'kaboum'.
#include <stdio.h>
int mafonction(int * pArray) // arg: pointeur sur tableau d'int { int kaboum[8]={1,2,3,4,5,6,7,8}; for(int i=0; i<8; i++) *(pArray+i) = kaboum[i]; return 0; }
int main() { int tableau[8]; mafonction(tableau); return 0; }
------------------------------- Réponse au message : -------------------------------
> il me renvoie comme message d'erreur au niveau de strcpy : > passing `int *' as argument 1 of `strcpy(char *, const char *)' > > ouh là,là... c'est compliqué d'initialiser dans une fonction un tableau d'entiers... je vais finir par faire du visual basic... > > > > > ------------------------------- > Réponse au message : > ------------------------------- > > > decidement je suis pas en forme aujourd'hui, essai ça pour la troisième fois et je pense que c'est la bonne. A demain, j'ai du boulot... > > int* mafonction();//récupère pointeur sur entier > > using namespace std; > > > > int* mafonction() > > { > > int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau > > cout<<"Kaboum 4 : "<<kaboum[4]; > > return kaboum;//revoie l'adresse de base de ton tableau > > } > > > > int main() > > { > > int tableau[8]; > > strcpy(tableau,mafonction); > > > > system("PAUSE"); > > return 0; > > } > > > > a+ > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > Une étoile est rester coincer dans le clavier... > > > essai plutot ça... > > > > > > int* mafonction();//récupère pointeur sur entier > > > using namespace std; > > > > > > int* mafonction() > > > { > > > int kaboum[8]={1,2,3,4,5,6,7,8};//kaboum=pointeur sur l'adresse de base de ton tableau > > > cout<<"Kaboum 4 : "<<kaboum[4]; > > > return kaboum;//revoie l'adresse de base de ton tableau > > > } > > > > > > int main() > > > { > > > int tableau[8]; > > > tableau=mafonction; > > > > > > system("PAUSE"); > > > return 0; > > > } > > > > > > le seule question est : est ce que kaboum, variable locale, n'est pas "détruit"? Si oui, tu peux récupérer ton tableau tant qu'il n'a pas été écraser. Vue que je sais pas trop, j'espère qu'un autre répondra à cette intérrogation > > > a+ > > > > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > > > > > Essai ça et tiens moi au courant pas le temps de tester mais à priori.. > > > > int* mafonction(); > > > > using namespace std; > > > > > > > > int mafonction() > > > > { > > > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > > > cout<<"Kaboum 4 : "<<kaboum[4]; > > > > return kaboum; > > > > } > > > > > > > > > > > > int main() > > > > { > > > > int tableau[8]; > > > > tableau=mafonction; > > > > > > > > system("PAUSE"); > > > > return 0; > > > > } > > > > > > > > a+ > > > > > > > > > > > > ------------------------------- > > > > Réponse au message : > > > > ------------------------------- > > > > > > > > > j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est : > > > > > > > > > > > > > > > int mafonction()[8]; > > > > > using namespace std; > > > > > > > > > > int mafonction() > > > > > { > > > > > int kaboum[8]={1,2,3,4,5,6,7,8}; > > > > > cout<<"Kaboum 4 : "<<kaboum[4]; > > > > > return kaboum[]; > > > > > } > > > > > > > > > > > > > > > int main() > > > > > { > > > > > int tableau[8]; > > > > > tableau=mafonction; > > > > > > > > > > system("PAUSE"); > > > > > return 0; > > > > > } > > > > > > > > > > > > > > > > > > > > devc++ me renvoie : `mafonction' declared as function returning an array > > > > > > > > > > > > > > > comment faire??? > > > > > merci! > > > > > > > > > >
|
|
Cette discussion est classée dans : fonction, int, tableau, mafonction, kaboum
Répondre à ce message
Sujets en rapport avec ce message
Tableau de structure [ par tomsawyerbelgique ]
Bonjour suriez-vous me dire comment fait-on pour passer un tableau de structure dans une fonction:struct student { char nom[10]; int nbcot
tableau a double entrée alloué dynamiquement [ par amortlintelligence ]
Voila j'aurais voulu utiliser un tableau (tableau de tableau) dans une fonction. Je pense qu'il faut donc que je le crée dynamiquement avec un code du
REcuperer des donnée d'un fichier binaire vers une tableau de hachage [ par whiteknight ]
Slt j'ai des problemes avec ma fonction load qui me permet de recuperer les données d'un fichier binaire et de les transférer vers un tableau de hacha
Allocation dynamique dans une fonction [ par Veovis ]
Salut,Toujours dans mon projet de TP, j'ai un petit soucis avec l'allocation dynamique dans une fonction. Ce que je voudrais faire c'est quand le tabl
Tableau en C [ par Mickylord ]
Bonsoir a tous !Voici ma question :J'ai une fonction principale, main(), et une autre fonction tab(). Je voudrais déclarer un tableau dans la fonction
Fonction qui retourne un tableau [ par Kurul1 ]
Bonjour à tous J'ai une classe contenant un tableau a deux dimensions comme variable private Ce que je voudrais c'est une fonction ayant pour param
tableau d'entier. [ par gdpasmini ]
Hello !j'ai un petit soucis avec une fonction qui renvoi un tableau en parametre... voila les details :Dans mes fonctions : int * boutonDecodFlux(void
abération pointeurs de fonction ? [ par acx01b ]
bonjour, quelqu'un pourrait m'expliquer ce que signifie ce code pour nos compilateurs ? int mafonction () { return 54; } int main() { int (*fun
Fonction qui utilise un int* externe pour créer un tableau [ par tibob51 ]
Bonjour je voudrai savoir si il est possible qu'une fonction recoive un pointeur d'entier,créé un tableau dynamiquement puis l'initialise,afin de le r
fonction min max [ par devamos ]
bonjour,j'aimerais des corrections,si vous pouvez m'aider j'ai ecri ces instructions en devc++,,, c'est une fonction qui cherche le max et le min dans
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|