salve,
ho un problema con un programma che sto srcivendo. Quando il programma genera i file member.txt e access_data.txt alla fine mi inserisce due caratteri in piu... chi mi puo spiegare perchè??
Questo è il codice:
grazie in anticipocodice:#include <iostream> #include <fstream> #include <stdlib.h> #include <sstream> using namespace std; #define space ' ' #define newline '\n' #define tab '\t' //inizializing function void main_page(); void reg_page(); void reg_write(); void access_page(); void access_write(); void pause(); void cls(); struct member { char name[50]; char surname[50]; char year[4]; }; //global variable bool memb; //main function int main() { string syear; member a; member * p; p = &a; do { //call the main page function main_page(); //if you aren't a member... if (memb!=1) { //start registration step reg_page(); reg_write(); memb=true; //end registration step } //if you are a member... access_page(); access_write(); memb=true; }while (memb=false, memb=true); } //main page function void main_page() { cout << newline << newline << newline; cout << tab << tab << "WELCOME TO LIBRARY"; cout << newline << newline << newline; cout << tab << "ARE YOU A MEMBER? (1=si, 0=no) --> "; cin >> memb; } //access page function void access_page() { cout << newline << newline << newline; cout << "Remember that the access data will be save, so if you aren't a member is better don't continue"; cout << newline << newline; cout << tab << tab << "ACCESS:"; cout << newline << newline; } //write access_data.txt void access_write() { member a; member * p; p = &a; fstream f2; f2.open ("access_data.txt", ios::out); cout << tab << tab << "NAME: "; cin >> p->name; f2 << p->name << tab; cout << tab << tab << "SURNAME: "; cin >> p->surname; f2 << p->surname << tab; cout << tab << tab << "BORN DATE: "; cin >> p->year; (stringstream) p->year; f2 << p->year; f2 << newline; f2.close(); } //registration page function void reg_page() { cout << newline << newline << newline; cout << tab << tab << "REGISTRATION:"; cout << newline << newline; } //write member.txt void reg_write() { member a; member * p; p = &a; fstream f1; f1.open("members.txt", ios::out); cout << tab << tab << "NAME: "; cin >> p->name; f1 << p->name << tab; cout << tab << tab << "SURNAME: "; cin >> p->surname; f1 << p->surname << tab; cout << tab << tab << "BORN DATE: "; cin >> p->year; (stringstream) p->year; f1 << p->year; f1 << newline; cout << newline << newline; cout << "REGISTRATION COMPLETE"; f1.close(); } void pause() { system("PAUSE"); } void cls() { system("CLS"); }![]()

Rispondi quotando