Maison >développement back-end >C++ >Comment les valeurs booléennes sont-elles imprimées en C ?

Comment les valeurs booléennes sont-elles imprimées en C ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-27 11:28:30635parcourir

How are Boolean Values Printed in C  ?

Impression booléenne en C : qu'est-ce qui est affiché ?

Introduction

Lors de l'impression de valeurs booléennes dans C , il est important de comprendre le comportement spécifié pour garantir une sortie cohérente.

Exigences standard

La norme C n'exige pas explicitement un résultat spécifique lors de l'impression de valeurs booléennes. Le comportement est défini par l'implémentation et dépend du flux spécifique.

Drapeau Boolalpha

Les flux standards (cout, cerr, etc.) ont un indicateur boolalpha qui contrôle la représentation des valeurs booléennes. Lorsqu'elles sont définies sur false (par défaut), les valeurs booléennes sont affichées sous la forme 0 (faux) ou 1 (vrai). Lorsqu'ils sont définis sur true, ils sont affichés sous forme de chaînes « false » et « true ».

Exemple :

Le code suivant démontre l'utilisation de l'indicateur boolalpha :

<code class="cpp">#include <iostream>
#include <iomanip>

int main() {
    std::cout << false << "\n";
    std::cout << std::boolalpha;
    std::cout << false << "\n";
    return 0;
}</code>

Sortie :

Sans boolalpha défini, la sortie sera :

<code class="txt">0
false</code>

Avec boolalpha défini, la sortie sera :

<code class="txt">0
false</code>

Localisation

Lorsque boolalpha est défini, les chaînes affichées pour false et true peuvent être localisées en fonction des paramètres régionaux actuels. Par exemple, le code suivant définit les paramètres régionaux sur le français et imprime un booléen :

<code class="cpp">#include <iostream>
#include <iomanip>
#include <locale>

int main() {
    std::cout.imbue(std::locale("fr"));
    std::cout << std::boolalpha;
    std::cout << false << "\n";
    return 0;
}</code>

Sortie :

<code class="txt">faux</code>

Personnalisation de la représentation booléenne

Si nécessaire, il est possible de personnaliser la représentation des valeurs booléennes en créant une facette numpuct personnalisée. La facette numpuct permet de contrôler le formatage numérique, y compris les chaînes vraies et fausses.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn