Voici un message reçu le 1er septembre 2004 (j'ai corrigé les fautes au passage) :
« Coucou Patrice.
J'ai une petite question embêtante, car je ne peux trouver la réponse malgré d'intenses recherches. La voici : pour arreter l'exécution d'une application console, j'utilise la ligne suivante :
system("pause");
Voici les inclusions :
#include <iostream>
#include <string>
#include <fstream>
Comment se fait-il que la compilation fonctionne? Ne devrais-je pas inclure la bibliothèque dos.h?
Si tu a une piste de solution, ça serait grandement apprécié!
Bisous Nic XXX ».
La réponse que j'ai proposé à cet ami suit :
Tout d'abord, dos.h n'est pas un fichier d'en-tête C++ (ou C), mais bien une implémentation locale à un système d'exploitation précis (comme windows.h par exemple).
Ensuite, remarque que la fonction que tu utilises est system(), pas "pause". La fonction system() se situe dans l'espace nommé std et a pour rôle de :
La fonction system() est une fonction portable prise dans <cstdlib> qui est toujours incluse par défaut, un peu comme le sont des trucs comme std::memcpy() par exemple. Elle ne sait rien sur les commandes que supporte l'interpréteur de commandes sous-jacent; elle passe le puck et c'est tout.
Cool? Bizous!