我正在开发一个简单的酒店预留项目,但在输入他们的名字后我无法打印客户名称和付款类型。这是我输入的代码段。
cout << "Please enter the customer name: " << endl;
cin >> customername1;
cin.getline(customername1,100,'\n');
fflush(stdin);
cout << "Please enter the payment type: " << endl;
cin >> paymenttype;
cin.getline(paymenttype,100,'\n');
fflush(stdin);
cout << "How many days would you like to stay: " << endl;
cin >> days;
room_income = days * 30;
count_room++ ;
count_customer1++ ;
customer_name1[single]= new char [strlen(customername1)+1];
strcpy(customer_name1[single],customername1);
payment_type[single]= new char [strlen(paymenttype)+1];
strcpy(payment_type[single],paymenttype);
cout << "Room number : " << single << endl<< endl;
cout << "Customer name : "<< customer_name1 << endl << endl;
cout << "Payment type : "<< payment_type << endl<< endl;
cout << "Number of day for accomodation :"<< days << endl<< endl;
cout << "Income for this room : "<< room_income<< endl<< endl;
为客户名称和付款类型显示一些随机数字和字母。我该怎么写得好呢?
答案 0 :(得分:1)
对于客户名称和付款类型,您尝试打印数组,而不是一个元素。由于数组基本上只是指向第一个元素的指针,因此您将获得一个随机数&#39;,这是内存地址。
尝试:
cout << "Customer name : "<< customername1 << endl << endl;
cout << "Payment type : "<< paymenttype << endl<< endl;
当你完成这项工作后,请按照评论查看std :: string和vector ...