le plus propre, c'est une expression régulière, regarde dans boost::regex par exemple.
Sinon, tu peux utiliser scanf ou sscanf, qui peut servir d'expression régulière primitive (du matching en vrai).
http://xrenault.developpez.com/tutoriels/c/scanf/
C'est vraiment pas propre et c'est même pas du C++ mais du C, mais il y a moyen de faire ça simplement. A toi de voir quel niveau de qualité tu dois atteindre.
De tête, et sans garantie, je dirais :
int j, m, a;
const char* buffer = ... // ton buffer qui contient par exemple "10/03/2009"
sscanf( buffer, "%d/%d/%d", &j, &m, &a );
A prendre si t'es à la bourre et que tu cherches pas un truc mieux. Sache que c'est crade et pas sécurité du tout, mais ça fait une ligne et t'as pas besoin de boost.
Hop j'entends déjà Taz et Joef hurler à raison que c'est crade, mais bon c'est juste pour te dépanner. Si t'as le temps, utilise boost.
Message édité par jesus_christ le 07-02-2009 à 21:51:44