Accueil > > > SETIOSFLAGS ET RESETIOSFLAGS
SETIOSFLAGS ET RESETIOSFLAGS
Information sur la source
Description
Ce code présente différentes valeurs (paramètres) que peut adopter le manipulateur setiosflags. Chaque paramètre présenté est mis en situation afin de vous expliquer au mieu comment ils agissent. Cette source,... ne sert absolument a rien mis a par le fait qu'elle essaye d'expliquer l'utilisation de setiosflags et resetiosflags.
Source
/* Ce code montre divers paramètres pour setiosflags */
#include <iostream.h> // Pour cout
#include <iomanip.h> // Pour setiosflags et resetiosflags
void main ()
{
const caract_espacement = 0x0001; //Saute les caractères d'espacement
const align_gauche = 0x0002; // Affichage aligné a gauche
const align_droite = 0x0004; // Affichage aligné a droite
const format_interne = 0x0008; // Affichage au format interne
const base_10 = 0x0010; // Active la base de numération de base 10
const base_8 = 0x0020; // Active la base de numération de base 8
const base_16 = 0x0040; // Active la base de numération de base 16
const affich_base = 0x0080; // Affiche la base de numération
const point_decimal = 0x0100; // Affiche le point décimal
const majuscule = 0x0200; // Affichage en majuscule pour les préfixe hexa ou pour les exposants
const affich_signe_plus = 0x0400; // Affiche les nombres positif avec un +
const scientifique = 0x0800; // Affichage au format scientifique (virgule flottante)
const fixe = 0x1000; // Affichage au format fixe
const purge_tampon_es = 0x2000; // Vide la mémoire tampon Entrée/Sortie
const purge_tampon_es_1 = 0x4000; // Vide la mémoire tampon Entrée/Sortie (autre méthode)
cout << "------- Droite, Gauche, Interne -------\n\n";
/* Afin de pouvoir remarquer les effets des différentes valeur concernant l'affichage
nous utiliserons "setfill('*')" qui permet de remplacer chaque espace par une
"*" ainsi que "setw(10)" qui paramètre une valeur minimale pour la longeur de la chaine en
l'occurence une chaine de 10 caractères */
// Par défaut, l'affichage est positionné a droite. L'instruction suivante retourne : *******123
// l'affichage par défaut étant positionné a droite, l'instruction :
cout << setw(10) << setfill('*') << setiosflags(align_droite) << 123 << resetiosflags(align_droite);
cout << "\n";
// Resetiosflags remet en cause les spécifications de format établie par setiosflags
// donne la même chose que :
cout << setw(10) << setfill('*') << 123;
cout << "\n";
// positionner l'affichage a gauche
cout << setw(10) << setfill('*') << setiosflags(align_gauche) << 123 << resetiosflags(align_gauche);
cout << "\n";
// pour l'affichage interne (prenons un exemple avec le nombre 123 en hexadecimal)
cout << setw(10) << setfill('*') << setiosflags(format_interne) << setiosflags(affich_base) << hex << 123
<< resetiosflags(format_interne) << resetiosflags(affich_base);
cout << "\n";
cout << "\n------- Droite, Gauche, Interne -------\n";
// Pour afficher les base de numération c'est très simple
// pour la base hexadécimal
cout << "\n";
cout << "Afficher la base hexadecimal : " << hex << setiosflags(affich_base) << 123;
// pour la base octal
cout << "\n";
cout << "Afficher la base octal : " << oct << 123;
// pour la base décimale (aucune modification)
cout << "\n";
cout << "Afficher la base decimal (aucune modification) : " << dec << 123 << resetiosflags(affich_base);
/* pour l'affichage scientifique (nombre affiché avec un exposant sous la forme
D.ddde-n (D -> entier situé a gauche de la virgule / d -> nombre décimal situé a droite de
la virgule / e-n -> Exposant -n) */
cout << "\n";
cout << "Affichage scientifique : " << setiosflags(scientifique) << 123.456 << resetiosflags(scientifique);
// pour l'affichage fixe
cout << "\n";
cout << "Affichage fixe : " << setiosflags(fixe) << 123.456789 << resetiosflags(fixe);
cout << "\n";
/* pour forcer l'affichage du point décimal; le compilateur supprime automatiquement la virgule.
Lorsque l'on veut afficher 123.00 par l'instruction cout << 123.00 le resultat donne 123
Si vous voulez forcer l'affichage du point utilisez la méthode suivante */
cout << "Affichage du point decimal : " << setiosflags(point_decimal) << 123.00 << resetiosflags(point_decimal);
cout << "\n";
/* l'affichage de cette instruction donnera 123.000 un 3eme zero a été ajouté car le nombre
de chiffre en sortie par defaut est de 6 */
// pour afficher le signe + pour les nombre positif.
cout << "Affichage d'un entier positif avec son signe : " << setiosflags(affich_signe_plus) << 123 << resetiosflags(affich_signe_plus);
cout << "\n";
/* pour afficher le préfixe d'un nombre hexadécimal en majuscule ou encore l'exposant
de l'affichage scientifique. */
// pour la base hexadécimal
cout << "Affichage du prefixe hexadecimal en majuscule : " << setiosflags(affich_base) << setiosflags(majuscule) << hex << 123
<< resetiosflags(affich_base);
cout << "\n";
// pour les exposant
cout << "Affichage scientifique (Exp en majuscule) : " << setiosflags(scientifique) << dec << 123.456 << resetiosflags(scientifique) << resetiosflags(majuscule);
cout << "\n\n";
}
Conclusion
Voila, j'espère que cette source vous aidera a y voir plus clair malgré que le sujet soit loin d'être compliqué.
Historique
- 13 janvier 2006 18:03:40 :
- ...
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Convertir une chaine de caractere en Float [ par Johjo ]
Bon, voilà, j'ai encore un probleme.Je dois maintenant convertir un chaine de caractere en float, et je ne trouve pas de fonctions, j'ai regardé dans
PB DE CHAINE DE CARACTERE [ par Orkblutt ]
pkoi ceci me genere t'il une erreur a l'execution??#include <string>void main(){ int o; o=2000; char* O=new char; itoa(o,O,10); char* ch="Fichie
PB DE CHAINE DE CARACTERE [ par Orkblutt ]
pkoi ceci me genere t'il une erreur a l'execution??#include <string>void main(){ int o; o=2000; char* O=new char; itoa(o,O,10); char* ch="Fichie
Convertir chaine de caractere -> decimal [ par LordBob ]
Salut a tous, en fait je voudrai juste savoir comment est-ce ke l'on pouver convertir une chaine de caractère (ex: salut) en decimal... Voila, m
Rechercher une chaine de caractere [ par Johjo ]
Il n'y aurait pas une fonction qui me permette de retrouver une chaine de caractere dans une autreparce moi, je trouve rien du tout :(Si quelqu'un pou
Ajouter des slash [ par Mike ]
SAlut,je recupere une chaine de caractere qui correspond au PATH d'un fichier, ensuite je souhaite l'utiliser comme variable, mais le probleme c que l
Exploitation de fichier en C ?!?!?! [ par GazGaz ]
lu allalors voila le truc c'est que je voudrais aller chercher des infos dans un fichier qui est structuré de la meme maniere lignes apres lignes. Je
[VC++ 6.0] Extraire une chaine d'une CListBox [ par fredcpp ]
Bonjour, j'essaye d'extraire une chaine de caractere ( ou plutot un item qui est une chaine de caractere ) d'une CListBox.Cette CList est bien remplie
chaine de caractere [ par zincben ]
Bonjour je comprend pas tres bien pourquoi ce code passe bien #include <stdio.h>void main() { FILE *fp; char nom[10]; fp = fopen("barre.txt", "
comparation chaine de caractere [ par SfyLer ]
prise de tête j'arrive pas a comparer de chaine de caractere:#include <iostream.h>#include <string.h>char main(void){ char login[6]; cout
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
RE : SAC A DOS RE : SAC A DOS par hadjkaddour
Cliquez pour lire la suite par hadjkaddour
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|