Je développe une application très simple sur mon Mac en utilisant QtCreator.
C'est une application console et je veux que l'utilisateur entre son nom, puis j'affiche son nom. Voici le code:
#include <iostream>
int main(int ArgC, char* ArgV[])
{
char Name[1000];
std::cout << "Type your name : ";
std::cin >> Name;
std::cout << "Hello " << Name << "\n";
return 0;
}
Lorsque vous exécutez cette application avec QtCreator, la chaîne "Tapez votre nom:" s'affiche dans l'onglet "Application Output". Mais si je tape du texte et appuie sur la touche Entrée, rien ne se passe.
Qu'est-ce qui ne va pas ?
J'ai trouvé une solution. Avec Qt Creator 1.3.0 (sur Mac OS X), voici ce que je devais faire:
/usr/x11/bin/xterm -e
.Maintenant, tout fonctionne bien!
Allez dans Projet -> Paramètres d'exécution et assurez-vous que "Exécuter dans le terminal" est coché.
BTW:
std::cin >> Name;
n'est probablement pas ce que vous voulez. Il ne lira qu'un seul jeton (généralement uniquement le prénom). Vous devriez jeter un œil à getline , ou à version chaîne .
La solution Jeromes est la bonne. Bien que je puisse vous donner une alternative différente. Dans le cas où vous ne souhaitez pas utiliser X11 (pour une raison quelconque) dans la même position (QtCreator-> Preferences-> Environment: General: Terminal), vous pouvez donner votre chemin vers l'application Terminal comme ceci:/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
Prendre plaisir!
Solution pour Windows.
Dans le fichier .pro, ajoutez:
QT -= core gui
TEMPLATE = app
CONFIG += console
Allez dans Projet -> Paramètres d'exécution et assurez-vous que "Exécuter dans le terminal" est coché.
Pour Qt 2.4.0 basé sur Mac, cliquez sur l'onglet vertical Projet, qui se trouve sous le "Débogage" le long de la même ligne verticale que Bienvenue, Modifier, Concevoir. Dans Target-> Run, assurez-vous que "Run in terminal" est coché!
J'ai eu le problème "Impossible de démarrer l'émulateur de terminal 'xterm'" sur Mac et l'ai résolu en allant dans paramètres, Environnement et en cliquant sur le bouton " Reset "bouton à côté du champ de texte Terminal.
Par défaut, il a simplement indiqué "xterm -e" mais après la réinitialisation, il est devenu un chemin absolu de "/ usr/X11/bin/xterm -e".
Mon application console s'est alors bien déroulée.