2015-11-18 2 views
1

Est-il possible d'écrire du code pour rendre mon texte en sortie formaté au milieu de l'écran? J'ai beaucoup essayé, mais rien n'a fonctionné. Voici ce que j'ai pensé jusqu'ici.Comment régler la sortie au milieu?

cout.setf (ios::middle); 

C'était une erreur. Aussi je essayé

setw(10);//etc. 

Mais je suis un peu nouveau pour utiliser la commande setw donc je ne sais pas comment l'utiliser correctement.

MISE À JOUR:

//The Game of 4 Seasons 
#include <iostream> 
#include <string> 
#include <iomanip> 
using namespace std; 

int main() 
{ 
cout << "Welcome to this game\n\n\n"; 

system ("pause"); 
system ("cls"); 

cout << "CAUTION!\n\n"; 
cout << "The adventure you are about to embark contains high levels of:\n"; 
cout << "Fun\n"; 
cout << "Adventure\n"; 
cout << "Excitement\n\n\n"; 
cout << "If you have a record of buzz killing or anything similar, \nthen this game is NOT for you.\n\n\n\n"; 

system ("pause"); 
return 0; 
} 
+1

Vous ne pouvez pas faire cela indépendamment de la plate-forme, car il n'y a pas de moyen standard de connaître la largeur de votre console. – roeland

+0

Ma conjecture est que ce que vous demandez dépendrait du système d'exploitation, ou vous auriez besoin d'une sorte de bibliothèque spéciale pour ça comme ncurses. – 101010

+0

Il est à noter que 'cout' va à la sortie primaire, qui est parfois l'écran, et parfois un fichier. Ecrire au "milieu d'une ligne dans un fichier" n'a pas vraiment de sens, sauf si vous faites des hypothèses sur la durée de chaque ligne. Êtes-vous d'accord pour faire de telles hypothèses? –

Répondre

3

Q: Est-il possible d'écrire du code pour faire mon texte au format émis milieu de l'écran?

A: Oui. Pas avec "cout" directement. Mais certainement avec quelque chose comme ncurses:

+0

@Andrew Tew: Une option supplémentaire est [PDCurses] (https://jdonaldmccarthy.wordpress.com/2014/09/05/how-to-set-up-pdcurses-in-visual-studio-2013-c/). Comme NCurses, il est également disponible sur toutes les plateformes (y compris Windows). – paulsm4

+0

Pourriez-vous me montrer la page spécifique qui me montre comment sortir au milieu dans ncurses au moins. Ou ce que c'est en C++ lol. –

1

Pour moi, je préfère malédictions. Mais en fonction de la complexité de vos besoins, vous pouvez envisager une émulation de terminal ansi ... la plupart des systèmes en possèdent. (Sur Ubuntu, il est appelé gnome-terminal ")

Ensuite, vous pouvez utiliser. Ansi contrôle terminal pour la sortie Par exemple,

void gotoxy(int col, int row) 

pourrait sortir un char esc, suivi de "[" et ligne (ie "12"), suivi de ";" et du numéro de col ("40) suivi de" H ".

L'entrée de l'utilisateur serait std :: cin.

Pas une solution merveilleuse, mais avec certaines fonctionnalités.