Namespaces
Variants

std::istrstream:: istrstream

From cppreference.net
explicit istrstream ( const char * s ) ;
(1) (obsolète en C++98)
(supprimé en C++26)
explicit istrstream ( char * s ) ;
(2) (obsolète en C++98)
(supprimé en C++26)
istrstream ( const char * s, std:: streamsize n ) ;
(3) (obsolète en C++98)
(supprimé en C++26)
istrstream ( char * s, std:: streamsize n ) ;
(4) (obsolète en C++98)
(supprimé en C++26)

Construit un nouveau std::istrstream et son std::strstreambuf sous-jacent.

1,2) Construit le std::strstreambuf sous-jacent en appelant strstreambuf ( s, 0 ) et initialise la classe de base avec l'adresse du strstreambuf . Le comportement est indéfini si s ne pointe pas vers un élément d'un tableau terminé par un caractère nul.
3,4) Construit le std::strstreambuf sous-jacent en appelant strstreambuf ( s, n ) et initialise la classe de base avec l'adresse du strstreambuf . Le comportement est indéfini si s ne pointe pas vers un élément d'un tableau dont la longueur est d'au moins n éléments.

Paramètres

s - Chaîne C ou tableau de caractères à utiliser comme contenu du flux
n - taille du tableau

Exemple

#include <iostream>
#include <strstream>
int main()
{
    std::istrstream s1("1 2 3"); // chaîne littérale
    int n1, n2, n3;
    if (s1 >> n1 >> n2 >> n3)
        std::cout << n1 << ", " << n2 << ", " << n3 << '\n';
    char arr[] = {'4', ' ', '5', ' ', '6'};
    std::istrstream s2(arr, sizeof arr);
    if (s2 >> n1 >> n2 >> n3)
        std::cout << n1 << ", " << n2 << ", " << n3 << '\n';
}

Sortie :

1, 2, 3
4, 5, 6

Voir aussi

construit un objet strstreambuf
(fonction membre publique de std::strstreambuf )
construit un objet ostrstream , allouant optionnellement le tampon
(fonction membre publique de std::ostrstream )
construit un objet strstream , allouant optionnellement le tampon
(fonction membre publique de std::strstream )