une fonction transformant un int en char * [C] - Programmation
Marsh Posté le 16-02-2001 à 12:08:13
Elle existe essaye itoa je sais plus j'ai pas mon bouquin sous la main mais c'est un truc dans ce genre
Marsh Posté le 16-02-2001 à 13:11:01
char chaine[256]; 
int entier; 
 
sprintf(chaine, "%d", entier);
Marsh Posté le 16-02-2001 à 13:14:06
Raaaah vi les solutions les plus simples sont les meilleures. Putain je suis con des fois.
Marsh Posté le 16-02-2001 à 13:27:28
c klair j'suis trop con, j'aurais du y penser 
 
merci beaucoup 
Marsh Posté le 16-02-2001 à 16:21:58
Petite precision quand meme la fonction convertissant en char* existe : _itoa(int,char*,base);
Marsh Posté le 16-02-2001 à 16:37:08
Alors la question piege, dans la stdlib, je crois mais sans aucune certitude
Marsh Posté le 16-02-2001 à 17:25:58
Oui, c'est bien ça (dans stdlib.h) : 
char *_itoa( int value, char *string, int radix ); 
value 
  Number to be converted 
string 
  String result 
radix 
  Base of value; must be in the range 2 – 36 
 
A++
Marsh Posté le 16-02-2001 à 18:06:07
le mieux vu k'elle existe pas ss ttes les archi, c de coder sa propre fonction : 
 
int	get_nb_chiffre(int nbr) 
{ 
  int	result; 
 
  result = 0; 
  if (!nbr) 
    return (1); 
  else 
    { 
      while (nbr) 
 { 
   nbr %= 10; 
   result++; 
 } 
      return (result); 
    } 
} 
 
char	*int_to_str(int nbr) 
{ 
  char	*buff; 
  char	*result; 
 
  result = buff = malloc(get_nb_chiffre(nbr) + 1); 
  while (nbr) 
    { 
      *buff++ = '0' + nbr / 10; 
      nbr %= 10; 
      if (!nbr) 
 *buff = '0'; 
    } 
  *buff = 0; 
  return (result); 
}
Marsh Posté le 16-02-2001 à 19:10:30

Marsh Posté le 16-02-2001 à 23:13:50
| gilou2 a écrit a écrit  : char chaine[256]; int entier; sprintf(chaine, "%d", entier); | 
 
 
Oui, ca c'est la pratique standard des codeurs C. 
A+,
Marsh Posté le 17-02-2001 à 20:58:03
Je confirme, ça fait 10 ans que je travaille en C sous UNIX et sprintf est ce qu'il y a de plus simple et de plus portable. 
 
@+
Marsh Posté le 16-02-2001 à 11:45:39
en gros je voudrais l'inverse de "atoi"
je suis sûr que ça existe et en plus ça me soualerait de coder ce genre de fonction
merci d'avance