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

 


Dernière réponse
Sujet : [C] une fonction transformant un int en char *
MilesTeg 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.
 
@+

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
MilesTeg 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.
 
@+
gilou

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+,

slaanesh :)
Titoine42 :jap:  :jap:  :jap:
slaanesh 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);
}
zop C'est une fonction Microsoft _itoa
verdoux Moi je l'ai pas dans stdlib.h (sous linux).
WiseTechi 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++
golgoth99 Alors la question piege, dans la stdlib, je crois mais sans aucune certitude
verdoux Et c'est dans quel include ?
golgoth99 Petite precision quand meme la fonction convertissant en char* existe : _itoa(int,char*,base);
Titoine42 c klair j'suis trop con, j'aurais du y penser
 
merci beaucoup :jap:
Toxin Raaaah vi les solutions les plus simples sont les meilleures. Putain je suis con des fois.
gilou2 char chaine[256];
int entier;
 
sprintf(chaine, "%d", entier);
Titoine42 :cry:
Titoine42 g déjà testé itoa mais ça n'existe po
Toxin Ben je crois que ça n'existe pas en fait. En tout cas pas sous SOLARIS.
bipbipbip Elle existe essaye itoa je sais plus j'ai pas mon bouquin sous la main mais c'est un truc dans ce genre
Titoine42 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 :jap:

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