Tôi biết một chút C và bây giờ tôi đang xem C ++. Tôi đã quen với các mảng char để xử lý các chuỗi C, nhưng trong khi tôi xem mã C ++, tôi thấy có các ví dụ sử dụng cả hai kiểu chuỗi và mảng char:
#include <iostream>
#include <string>
using namespace std;
int main () {
string mystr;
cout << "What's your name? ";
getline (cin, mystr);
cout << "Hello " << mystr << ".\n";
cout << "What is your favorite team? ";
getline (cin, mystr);
cout << "I like " << mystr << " too!\n";
return 0;
}
và
#include <iostream>
using namespace std;
int main () {
char name[256], title[256];
cout << "Enter your name: ";
cin.getline (name,256);
cout << "Enter your favourite movie: ";
cin.getline (title,256);
cout << name << "'s favourite movie is " << title;
return 0;
}
(cả hai ví dụ từ http://www.cplusplus.com )
Tôi cho rằng đây là một câu hỏi được hỏi và trả lời rộng rãi (rõ ràng?), Nhưng thật tuyệt nếu ai đó có thể cho tôi biết chính xác sự khác biệt giữa hai cách xử lý chuỗi trong C ++ (hiệu suất, tích hợp API, theo cách mỗi người tốt hơn, ...).
Cảm ơn bạn.