Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3055 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  debutant : fonction retournant une chaine de charactere

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

debutant : fonction retournant une chaine de charactere

n°347925
GUG
Posté le 31-03-2003 à 09:21:38  profilanswer
 

bonjour pourais ton me donner un exemple d une fonction retournant une chaine de charactere :)  
merci d avance  
 
 
voila mon exemple : (marche pas bien sure ;) )

Code :
  1. const char tabmot[11][11]={"amen","religion","travail","option","ignorer","prendre","dispercer","fumer","racler","priere","lait"};
  2. char*  myrand(tabmot)
  3. {
  4. srand ( time(NULL) );
  5. return tabmot[rand()%11];
  6. }


Message édité par GUG le 31-03-2003 à 09:22:08
mood
Publicité
Posté le 31-03-2003 à 09:21:38  profilanswer
 

n°347932
GUG
Posté le 31-03-2003 à 09:28:23  profilanswer
 

ou alros dite moi pkoi ca ne peux pas marcher ;)  
aller un peut d aide parmi vous tous ;)

n°347934
chrisbk
-
Posté le 31-03-2003 à 09:28:48  profilanswer
 

c'est sympa de dire ce qui ne marche pas ! a l'avenir pense au moins a balancer les messages de compilation, c le minimum.
Enfin pour le coup, si le code poste correspond effectivement a celui que tu veux compiler c un peu normal que cela ne marche pas
 
 
 

Code :
  1. const char *tabmot[11]={"amen","religion","travail","option","ignorer","prendre","dispercer","fumer","racler","priere","lait"}; 
  2.  
  3.   const char*  myrand(const char ** tabmot) 
  4.   { 
  5.     //srand ( time(NULL) );  mauvais, ca fo le faire une seule fois en debut de programme, pas a chaque appel de myrand
  6.     return tabmot[rand()%11];
  7. }


   

n°347937
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 31-03-2003 à 09:32:20  profilanswer
 

const char tabmot[11][11]
const char *tabmot[11] est mieux
 
et la signature de ta fonction doit être  
const char* myrand(const char **tabmot)
 
edit: grilled [:grilled]


Message édité par Harkonnen le 31-03-2003 à 09:33:05
n°347944
chrisbk
-
Posté le 31-03-2003 à 09:35:51  profilanswer
 

Harkonnen a écrit :

const char tabmot[11][11]
const char *tabmot[11] est mieux
 
et la signature de ta fonction doit être  
const char* myrand(const char **tabmot)
 
edit: grilled [:grilled]


 
et bien :D parce que je suis tellement en forme que j'ai :
 
->tapé mon message
->edité ledit message (oublie le ** lors du proto)
->cru que j'avais double-poster
->effacer mon message
->constater le tableau
->retapé mon message
 
mais quelle forme, quelle energie, nous sommes les princes du lundi matin, ouais !
 
 
 
 

n°347955
GUG
Posté le 31-03-2003 à 09:45:11  profilanswer
 

ah merci :) j essaye de suite :)

n°347964
GUG
Posté le 31-03-2003 à 09:49:16  profilanswer
 

ca marche merci :)
(je n ai pas mis l erreur de compilo car je pensais que ca venais du code ;) )  
 
qq un pourrait il  m expliquer pkoi les 2 ** ?
(mon prof est incapable de le faire)

n°347969
chrisbk
-
Posté le 31-03-2003 à 09:51:37  profilanswer
 

GUG a écrit :

ca marche merci :)
(je n ai pas mis l erreur de compilo car je pensais que ca venais du code ;) )  


 
(?)
 

GUG a écrit :


qq un pourrait il  m expliquer pkoi les 2 ** ?
(mon prof est incapable de le faire)


 
pour faire simple, un tableau rajoute une etoile (un tableau d'int * devient en param un int **, idem pour char etc....)
 
(ca m'etonnerait quand meme que ton prof ne puisse pas t'expliquer ca)


Message édité par chrisbk le 31-03-2003 à 09:51:52
n°347974
GUG
Posté le 31-03-2003 à 09:54:30  profilanswer
 

bah non il peut pas me l expliquer :(  je le sais bien je lui est demander :(  
je sens que je v prendre un bouquin de c et l aprendre ;)  
 
euh parceque j ai rien compris a ton explication :D

n°347989
polo021
Posté le 31-03-2003 à 10:20:39  profilanswer
 

voici un pointeur sur un entier : int *ptr_entier;
 
voici un tableau de pointeurs sur entier : int **tab;
ton tableau est une adresse donc il te faut deja une * et comme c'est un tableau de POINTEURS il te faut une seconde *

mood
Publicité
Posté le 31-03-2003 à 10:20:39  profilanswer
 

n°347998
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 31-03-2003 à 10:24:28  profilanswer
 

chrisbk a écrit :


 
et bien :D parce que je suis tellement en forme que j'ai :
 
->tapé mon message
->edité ledit message (oublie le ** lors du proto)
->cru que j'avais double-poster
->effacer mon message
->constater le tableau
->retapé mon message
 
mais quelle forme, quelle energie, nous sommes les princes du lundi matin, ouais !


ben moi j'avais commencé à répondre, mais le tél a sonné à ce moment la, et j'avais la réponse encore ouverte [:sinclaire]


---------------
J'ai un string dans l'array (Paris Hilton)
n°348000
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 31-03-2003 à 10:25:50  profilanswer
 

GUG a écrit :


(mon prof est incapable de le faire)


:ouch: c'est une blague ??


---------------
J'ai un string dans l'array (Paris Hilton)
n°348008
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 31-03-2003 à 10:36:09  profilanswer
 

GUG a écrit :

euh parceque j ai rien compris a ton explication :D
 


une chaine de caractères est déjà considérée comme un tableau de caractères, ou un pointeur vers une zone de RAM qui contient des caractères.  
à partir du moment ou tu déclares un tableau de chaines, tu déclares un tableau de pointeurs vers des zones de RAM contenant des caractères. le tableau étant lui même une zone de RAM, tu peux y accéder de manière indicée (par les []), ou par un pointeur (pointant sur le début du tableau)
un tableau de chaines de caractères est donc un pointeur sur un pointeur de caractères, d'ou le **


---------------
J'ai un string dans l'array (Paris Hilton)
n°348643
GUG
Posté le 31-03-2003 à 22:43:51  profilanswer
 

ahh la merci j ai compris :))  
ps : je suis en bts les profs sont completement nul ... :(((( enfin dans celui oui je suis ... je suis en premiere annee et au bout d un an on a pas vu les pointeurs ...
 

n°348648
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 31-03-2003 à 22:47:28  profilanswer
 

GUG a écrit :

au bout d un an on a pas vu les pointeurs ...
 
 


tu te prépares des jours sombres, ami...


---------------
J'ai un string dans l'array (Paris Hilton)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  debutant : fonction retournant une chaine de charactere

 

Sujets relatifs
Comment créer un site web [ Débutant inside ]la fonction mail()
[emacs] utilisation des chainefonction avec nombre de parametres variables (comme printf)
afficher une chaine par itération[c++] compter les voyelles dans une chaine de caractere
chaine de caractere .Taille d'une chaine de caractere ?????
Question sur la fonction php : odbc_resultDechiffrer une fonction codée par un porc...
Plus de sujets relatifs à : debutant : fonction retournant une chaine de charactere


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR