mohamnt
جمعه 04 تیر 1389, 19:23 عصر
توی این کد
void information::Cadd()
{
system("clear");
ofstream myfile ("list.txt",ios::app);
char name[20],family[20],father[20],err[2];
unsigned short int age;
long c_no;
for (;;)
{
system("clear");
cout<<"Enter customer information (0 = quit ) \n";
cout<<"number: \t";
cin>>c_no;
if(c_no==0) break;
cout<<"name : \t";
cin.getline(err,2);
cin.getline(name,20);
cout<<"last name : \t";
cin.getline(family,19);
cout<<"father : \t";
cin.getline(father,20);
cout<<"age : \t";
cin>>age;
myfile<<c_no<<"\n"<<name<<"\n"<<family<<"\n"<<father<<"\n"<<age<<"\n";
}
}
با دو تا مشکل مواجه هستم که 1 -
وقتی رشته cin.getline (name,20) رو می نویسم توی برنامه اولین رشته ای که خونده میشه cin.getline(family,20) هست و من برای اینکه اولیسن رشته name خونده بشه یه رشته بنام err گذاشتم که از اون رد بشه :متفکر:
2 - برای اینکه اطلاعات به خروجی فرستاده بشه مجبورم وقت خونده شدن number یه داده اشتباه بدم در غیر اینصورت چیزی به خروجی نمیره ولی من می خوام با هر باز اجرای حلقه for داده هایی که قبل از اون اجرا شده به فایل فرستاده بشه ، این مشکل رو چطور باید حل کرد ؟
3 - برای اینکه دوباره خط اول فایل خروجی رو یا 3 خط رو در سه رشته قرار بدم باید چیکار کنم ؟؟
void information::Cadd()
{
system("clear");
ofstream myfile ("list.txt",ios::app);
char name[20],family[20],father[20],err[2];
unsigned short int age;
long c_no;
for (;;)
{
system("clear");
cout<<"Enter customer information (0 = quit ) \n";
cout<<"number: \t";
cin>>c_no;
if(c_no==0) break;
cout<<"name : \t";
cin.getline(err,2);
cin.getline(name,20);
cout<<"last name : \t";
cin.getline(family,19);
cout<<"father : \t";
cin.getline(father,20);
cout<<"age : \t";
cin>>age;
myfile<<c_no<<"\n"<<name<<"\n"<<family<<"\n"<<father<<"\n"<<age<<"\n";
}
}
با دو تا مشکل مواجه هستم که 1 -
وقتی رشته cin.getline (name,20) رو می نویسم توی برنامه اولین رشته ای که خونده میشه cin.getline(family,20) هست و من برای اینکه اولیسن رشته name خونده بشه یه رشته بنام err گذاشتم که از اون رد بشه :متفکر:
2 - برای اینکه اطلاعات به خروجی فرستاده بشه مجبورم وقت خونده شدن number یه داده اشتباه بدم در غیر اینصورت چیزی به خروجی نمیره ولی من می خوام با هر باز اجرای حلقه for داده هایی که قبل از اون اجرا شده به فایل فرستاده بشه ، این مشکل رو چطور باید حل کرد ؟
3 - برای اینکه دوباره خط اول فایل خروجی رو یا 3 خط رو در سه رشته قرار بدم باید چیکار کنم ؟؟