Puisque c'est ma première rencontre avec le langage de programmation C, ce n'est pas clair pour moi comment je vais convertir un morceau de code en C ++. Je sais que ce code peut être utilisé en C ++, mais je souhaite travailler exclusivement sur la syntaxe de la langue C ++.
Voici mon code: p>
ifstream input; input.open("Marks.txt");
3 Réponses :
Voici le moyen C ++ de le faire, bien que vous puissiez toujours utiliser ce code C.
#include <ifstream> int main() { std::string str; int i; double d; char c_str[10]; std::ifstream input; input.open("Marks.txt"); input >> str; // reads a word of text into str input >> i; // assuming there is a valid integer after the first line, reads it into i input >> d; // assuming there is a valid double after that, reads it into d // reads up to 9 characters + a '\0', stopping if it reaches a period input.get(c_str, 10-1, '.'); // etc. }
entrée >> STR; code> lit non une ligne mais (quelque chose comme) un mot. Cela cessera de lire les personnages de WhitSpace.
Comme ceci:
int main() { // Let the constructor handle opening the file. std::ifstream input("Marks.txt"); int n = 0; std::string s; double d = 0; // Read an int, followed by a string, followed by a double. if (input >> n >> s >> d) { std::cout << "Success!\n"; } else { std::cout << "Failure!\n"; } // The destruction of 'input' will close the file. }
premier à faire est de faire un objet std :: FRStream code> Ouvrez le fichier de votre choix, vous pouvez effectuer des lignes (en séquence) des éléments suivants:
// some operations here
// file is no longer needed -> close it
input.close();
entrée >> N; code> a >?
Ou
std :: getline (entrée, n); code> dépend du contenu.
Avez-vous lu des références? (Par exemple, ifstream - C ++ référence )
Remplacez les tableaux de caractères avec
std :: chaîne code>.