30/09/2018, 17:38

Sự khác biệt giữa std::string và char * và khi nào thì chọn một trong hai?

Với một bài toán liên quan đến chuỗi, cách sử dụng std::stringchar * có điểm gì khác biệt không?

Em dùng std::string cảm thấy dễ và đơn giản hơn char *. Và cũng chưa biết ưu điểm của char * trong trường hợp này là gì.

Mong các bác tư vấn giúp!

viết 19:47 ngày 30/09/2018

string nhiều hàm hỗ trợ hơn

... viết 19:50 ngày 30/09/2018

char* gọn nhẹ hơn std::string. Nhiều khi cần xử lý đơn giản, chỉ cần truyền vào hàm như thế này:

void func(const char* s);

std::string là 1 class, trong đó ngoài lưu trữ 1 char* được cấp phát động ra thì còn lưu trữ thêm nhiều thuộc tính khác như capacity, length, … và một số member function khác. Khi biên dịch thì nó phải include cả thư viện vào.

Nguyễn Duy Khánh viết 19:43 ngày 30/09/2018

String là 1 class nên nó bá hơn nhiều, nhiều hàm hỗ trợ, nhưng dung lượng lớn, char thì ít hàm hơn, tiết kiệm bộ nhớ

Minh Hoàng viết 19:41 ngày 30/09/2018

String là , char* là
Tùy tình hình mà mình sử dụng

Bài liên quan
0