1

Salut,

Qqn connait un équivalent aussi puissant que sscanf en C++?

Merci

2

#include <cstdio>
using std::sscanf;

grin
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3

Han ce vil troll caché grin
avatar

4

JackosKing (./1) :
Salut,

Qqn connait un équivalent aussi puissant que sscanf en C++?

Merci

>> ?

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

5

snscanf ? cheeky
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

6

#include <stringstream>

7

ouai istringstream avec en complément getline.
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

8

oui mais istringstream ne permet pas de faire ce genre de chose il me semble: iss >> prout >> "pouet pouet" >> prout;
En gros il me semble que ca prend pas en compte les const char[n].

Les points négatifs de sscanf sont qu'il ne vérifie pas la validité des paramètres (meme si certains compilos le font), et que les types ne sont pas extensibles.
Voilou.

9

iss >> "pouet pouet" c'est gore ça ^^
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

10

Ca veut surtout rien dire... autant splitter ta chaine si tu connais des substrings.

11

Oui donc ce n'est pas un équivalent correcte à sscanf -> retour au point de départ :/

12

hum, overwrite istringstream >> const char [taille que tu veux] pour que ca retourne simplement la reference sur le flux sans rien d'autre, et tu peux le faire marcher je pense

13

Mouai, ca me plait pas trop:/

14

nEUrOO (./12) :
hum, overwrite istringstream >> const char [taille que tu veux] pour que ca retourne simplement la reference sur le flux sans rien d'autre, et tu peux le faire marcher je pense

Ça doit aussi consommer les caractères connus.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

15

Ouep, tout a fait possible...

16

 1  istream & operator>>(istream & stream, const char * str)
 2  {
 3      for (unsigned i = 0; str[i] != '\0'; i++) {
 4          if (stream.get() != str[i]) {
 5              if (stream.rdstate() == istream::goodbit) {
 6                  stream.unget();
 7                  stream.setstate(istream::failbit);
 8              }
 9              break;
10          }
11      }
12      return stream;
13  }
Quelque chose dans ce goût là ?
(penser à ajouter un throw si on utilise les exceptions)