Voici mon code C++ actuel. Je voudrais savoir comment écrire une ligne de code. Est-ce que j'utiliserais toujours cin.getline(y)
ou quelque chose de différent? J'ai vérifié, mais je ne trouve rien. Lorsque je l'exécute, cela fonctionne parfaitement, sauf qu'il ne tape que n Word au lieu des lignes complètes dont j'ai besoin pour la sortie. C'est pour ça que j'ai besoin d'aide. Je l'ai décrit dans le code.
Merci pour ton aide
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <fstream>
using namespace std;
int main()
{
char x;
cout << "Would you like to write to a file?" << endl;
cin >> x;
if (x == 'y' || x == 'Y')
{
char y[3000];
cout << "What would you like to write." << endl;
cin >> y;
ofstream file;
file.open("Characters.txt");
file << strlen(y) << " Characters." << endl;
file << endl;
file << y; // <-- HERE How do i write the full line instead of one Word
file.close();
cout << "Done. \a" << endl;
}
else
{
cout << "K, Bye." << endl;
}
}
Le code cin >> y;
ne lit que dans un seul mot, pas sur toute la ligne. Pour obtenir une ligne, utilisez:
string response;
getline(cin, response);
response
contiendra alors le contenu de la ligne entière.
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <fstream>
#include <string>
int main()
{
char write_to_file;
std::cout << "Would you like to write to a file?" << std::endl;
std::cin >> write_to_file;
std::cin >> std::ws;
if (write_to_file == 'y' || write_to_file == 'Y')
{
std::string str;
std::cout << "What would you like to write." << std::endl;
std::getline(std::cin, str);
std::ofstream file;
file.open("Characters.txt");
file << str.size() << " Characters." << std::endl;
file << std::endl;
file << str;
file.close();
std::cout << "Done. \a" << std::endl;
}
else
std::cout << "K, Bye." << std::endl;
}
string str;
getline(cin, str);
cin >> ws;
Vous pouvez utiliser la fonction getline pour lire la ligne entière au lieu de lire Word par Word. Et le cin >> ws est là pour ignorer les espaces blancs. Et vous trouverez des détails à ce sujet ici: http://en.cppreference.com/w/cpp/io/manip/ws