C++ format string

Bonjour,

bonjour je voudrais savoir comment
stocker un entier <255 dans un string de taille 3
et qu'il soit toujours aligné à droite
merci
Configuration: Windows XP Internet Explorer 14.0

3 réponses

  1. Contributeur
    Salut,
    Ou alors plus simple que réinventer la poudre ^^, utiliser la classe ostringstream.
    Exemple :
    #include <iostream>
    #include <sstream>
    
    int main() {
       std::ostringstream s;
       s<<123;
       std::string ch=s.str();
       std::cout << ch << std::endl;
    }
    

    Cdlt
    2
    1. Bonjour,

      Il y a une solution basique, avec une petite boucle :
      - tu fait un modulo 10 de ton nombre --> tu récupère ton 3ème chiffre
      - tu divise ton nombre par 10 (arrondi à l'inférieur)
      - tu fait un modulo 10 de ton nombre --> tu récupère ton 2ème chiffre
      - tu divise ton nombre par 10 (arrondi à l'inférieur)
      - tu fait un modulo 10 de ton nombre --> tu récupère ton 1er chiffre
      - ..
      - ... etc... à continuer si tu veux faire avec plus que 3 chiffres

      Par ex, avec 275 :
      275%10= 5 --> 3ème chiffre
      275/10 = 27
      27%10 = 7 --> 2 ème chiffre
      27/10 = 2
      2%10 = 2 --> 1er chiffre

      Autre ex, avec 72, pour vérifier que c'est cadré à droite :
      072%10 = 2 --> 3ème chiffre
      072/10 = 7
      7%10 = 7 --> 2 ème chiffre
      7/10 = 0
      0%10 = 0 --> 1er chiffre

      En espérant t'avoir aidé
      Bon courage
      Marc
      0
      1. je crois en C# il y a un truc comme string s=String.Format({0,3:0},monentier); qui permet de faire ça
        comment en C++?
        0