Comment imprimer les zéros non significatifs avec l'opérateur de sortie C
En C, garder le contrôle sur le formatage de la sortie est crucial. Pour y parvenir, vous pouvez utiliser des opérateurs de sortie tels que << opérateur. Ce guide explique comment utiliser l'opérateur de sortie pour imprimer les zéros non significatifs en C , similaire à la fonction printf() avec le spécificateur de format d.
Pour ce faire, considérez le code suivant :
std::cout << "ZIP code: " << sprintf("%05d", zipCode) << std::endl;
Cette approche utilise sprintf() pour formater le code postal en une chaîne avec des zéros non significatifs, qui est ensuite générée par le << opérateur. Cependant, ce n'est pas idéal en raison de l'appel supplémentaire sprintf().
Au lieu de cela, C fournit des manipulateurs d'E/S qui offrent plus de flexibilité et de contrôle. Le code suivant démontre leur utilisation :
#include <iostream> #include <iomanip> using namespace std; cout << setw(5) << setfill('0') << zipCode << endl;</p> <p>Le manipulateur setw(5) définit la largeur du champ à 5 caractères, garantissant suffisamment d'espace pour le code postal et les zéros non significatifs. Le manipulateur setfill('0') spécifie le caractère de remplissage comme '0', qui sera utilisé pour remplir le champ.</p> <p>Vous pouvez également utiliser la bibliothèque fmt, qui simplifie le formatage et permet plus d'expressivité : </p> <pre class="brush:php;toolbar:false">cout << fmt::format("{0:05d}", zipCode);
De plus, C 20 introduit la fonction std::format, offrant des fonctionnalités similaires à fmt bibliothèque.
Cependant, il est important de noter que ces manipulations d'E/S affectent l'état global de l'objet cout, donc les utilisations ultérieures de cout seront affectées à moins que vous n'annuliez les manipulations.
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!