Maison >développement back-end >C++ >Explication détaillée de l'utilisation d'ostringstream
ostringstream est une classe de la bibliothèque standard C++ qui peut être utilisée pour construire des chaînes. Il s'agit d'un flux de sortie et peut être utilisé comme cout, mais le résultat de la sortie ne sera pas affiché dans le terminal, mais sera enregistré dans une chaîne. objet au milieu. Lorsque vous avez besoin de créer une chaîne, vous pouvez utiliser ostringstream pour fonctionner, ce qui est très utile pour la sortie formatée, la journalisation, etc.
ostringstream est une classe de la bibliothèque standard C++, qui appartient au fichier d'en-tête b9d007fdd0a9230760ee80bd9f78ebf5 Cette classe peut être utilisée pour construire une chaîne. Il s'agit d'un flux de sortie et peut être utilisée comme cout, mais le résultat de la sortie ne sera pas affiché dans le terminal, mais sera enregistré dans un objet chaîne. Lorsque vous avez besoin de créer une chaîne, vous pouvez utiliser ostringstream pour fonctionner, ce qui est très utile pour la sortie formatée, la journalisation, etc.
Voici l'utilisation de base de ostringstream :
#include <sstream> #include <iostream> #include <string> int main() { // 创建一个ostringstream对象 std::ostringstream oss; // 向ostringstream对象中插入数据 oss << "Hello, " << "world!" << std::endl; // 将ostringstream对象转化为字符串 std::string str = oss.str(); // 输出字符串 std::cout << str; return 0; }
Dans cet exemple, nous créons d'abord un objet ostringstream, puis nous l'utilisons comme cout pour insérer des données. Les données insérées incluent des chaînes et des nouvelles lignes. Ensuite, nous utilisons la méthode str() pour convertir l'objet ostringstream en chaîne, et enfin afficher la chaîne sur le terminal.
Après avoir exécuté ce code, le terminal affichera :
Hello, world!
En plus d'utiliser l'opérateur << pour insérer des données dans l'objet ostringstream, vous pouvez également utiliser la méthode oss.write(char_array, size_t), qui peut écrivez le tableau de caractères dans l'objet ostringstream. Cette méthode nécessite deux paramètres, le premier paramètre est le tableau de caractères à écrire et le deuxième paramètre est le nombre d'octets à écrire. Par exemple :
char arr[] = "Hello, world!"; oss.write(arr, sizeof(arr) - 1); // 第二个参数是-1,表示写入所有字符,不包括字符串结尾的null字符。
De plus, ostringstream fournit également de nombreuses autres méthodes, telles que : setf(), unsetf(), précision(), setiosflags(), etc., qui peuvent être utilisées pour définir le format de sortie. Par exemple :
oss.setf(std::ios::fixed, std::ios::floatfield); // 设置浮点数格式为固定小数点格式。 oss.precision(2); // 设置精度为2。 oss << 3.14159265358979323846; // 输出3.14。
En général, ostringstream est un outil très utile qui peut être utilisé pour créer des chaînes. Il est utilisé de manière très similaire à cout, mais les résultats de sortie sont enregistrés dans une chaîne au lieu d'être affichés dans le terminal.
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!