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

  FORUM HardWare.fr
  Programmation
  C

  Limite du printf ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Limite du printf ?

n°2018853
Froooom
Posté le 25-08-2010 à 10:36:48  profilanswer
 

Bonjour tout le monde,
 
 
Je lance ce topic sur le printf car malgré le caractère très complet de cette fonction, je me retrouve bloqué sur un détail que je pourrais contourner sauf que je suis tétu et que je me dit qu'il existe une solution simple que je n'ai pas vu!
J'ai besoin d'avoir un contrôle totale sur le nombre que je vais écrire avec printf ( en réalité fprintf ).
En l'occurence et pour les connaisseurs du fortran (que je ne suis pas) je dois écrire un nombre au format f20.13, le 20 comprenant tout les symboles du nombre en écriture scientifique.
Pour résumer je veut mettre mon nombre sous la forme : (signe)a.bbbbbbbbbbbbbE+CC
 
Pas de problème je cours sur mon printf:

Code :
  1. printf("% 20.13e\n", toto);

 
 
Problème :  au lieu d'avoir 2 chiffre pour représenter mon exposant je me retrouve avec 3. J'ai vu ailleurs que cela dépendait de l'implémentation mais que cela veut-il dire, n'y a t'il aucun moyen d'y échapper ??
 
Merci d'avance  :o

mood
Publicité
Posté le 25-08-2010 à 10:36:48  profilanswer
 

n°2018920
Un Program​meur
Posté le 25-08-2010 à 13:10:11  profilanswer
 

La norme dit simplement que l'exposant a au moins deux chiffres et n'offre aucun moyen de controler ca.  Et je ne connais pas d'implementation qui offre une extension pour le faire.  Si tu en as besoin, passer par sprintf et manipuler le resultat est vraisemblablement plus simple que de formater toi-meme correctement un flottant.


---------------
The truth is rarely pure and never simple (Oscar Wilde)
n°2018956
tpierron
Posté le 25-08-2010 à 14:53:10  profilanswer
 

Sinon, il reste toujours la bonne vieille méthode BoUr®¡Ñ™: au lieu de faire un printf, tu fais un sprintf dans un tableau suffisamment grand et tu enlève le/les zéros de trop à la main.
 
Edit: arf, j'ai mal lu la réponse au-dessus. Pas encore réveillé moi  :(


Message édité par tpierron le 25-08-2010 à 14:54:31
n°2019187
Froooom
Posté le 26-08-2010 à 16:21:14  profilanswer
 

Ok merci,
 
C'est un peu ce à quoi je m'attendais ! Il me décoit ce printf !!
 
Alors c'est parti pour le bricolage !
 
Mercii


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

  Limite du printf ?

 

Sujets relatifs
Structure / Chaines / printf erronéTexte limité dadns un textarea
fixer le temps limite d'exécution du .batArrondi à 10 près ? awk '{printf ("%d\n", $5+1)}' ?
[Access 2000] Limite Champs "Memo"[RESOLU] Acc. 2000 Export XL : contourner la limite de 255 caractères
limite des cas d'utilisation en POOGénéricité limité à 2 types
Export xls ou csv dépassant la limite des lignes Excel[Résolu] Limite le nombre d'éléments matchés
Plus de sujets relatifs à : Limite du printf ?


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