Hướng dẫn cách copy string trong C++. Bạn sẽ học được cách sử dụng hàm copy và substr để sao chép string trong C++ sau bài học này.
Chúng ta có 2 phương pháp để copy string trong C++ như sau:
- Sử dụng hàm copy
- Sử dụng hàm substr
Copy string trong C++ bằng hàm copy
Hàm copy trong C++
Hàm copy là một hàm thành viên trong class std:string, có tác dụng sao chép một phần hoặc toàn bộ chuỗi string ban đầu, bằng cách chỉ định vị trí cũng như số ký tự cần sao chép.
Như các hàm khác trong class str:string thì để sử dụng hàm copy, chúng ta cần include header file string vào đầu chương trình.
Cú pháp sử dụng hàm copy để sao chép string trong C++ như sau:
src.copy(des, length, pos);
Trong đó:
src
là chuỗi string ban đầudes
là mảng ký tự chứa kết quả. Lưu ý mảng ký tự này phải có đủ độ dài để chứa chuỗi kết quả.pos
là vị trí bắt đầu copy. Nếu lược bỏ pos thì sẽ bắt đầu copy từ đầu chuỗi stringlength
là độ dài (số ký tự) cần copy. Lưu ý giá trị của length phải không lớn hơn số ký tự có thể được copy
Hàm copy sẽ trả về số ký tự đã copy từ chuỗi string src
vào mảng ký tự des
.
Lưu ý, trong trường hợp chúng ta copy một phần của chuỗi ban đầu thì ký tự kết thúc chuỗi \0
sẽ không bao gồm trong kết quả, vì thế đừng quên thêm ký tự \0
sau kết quả sao chép chuỗi nhé.
Copy n ký tự từ đầu chuỗi string
Để copy n ký tự từ đầu chuỗi string, chúng ta lược bỏ đi đối số pos
khi sử dụng hàm copy trong C++ là xong. Ví dụ cụ thể:
|
Kết quả:
Hello |
Lưu ý là đừng quên thêm ký tự kết thúc chuỗi \0
vào kết quả copy chuỗi nhé.
Copy n ký tự từ vị trí m trong string
Khi chỉ định đầy đủ các đối số pos
và length
trong hàm copy, chúng ta có thể tiến hành copy n ký tự từ vị trí m trong string. Ví dụ cụ thể:
|
Kết quả:
llo |
Copy toàn bộ chuỗi string trong C++
Để copy toàn bộ chuỗi string trong C++, chúng ta cần phải chỉ định số lượng ký tự cần copy chính bằng độ dài chuỗi string ban đầu là xong. Ví dụ cụ thể:
|
Kết quả:
Hello world |
Lưu ý là trong trường hợp copy toàn bộ chuỗi string thì ký tự kết thúc chuỗi \0
cũng bao gồm luôn trong kết quả, do đó chúng ta không cần phải thêm ký tự này vào mảng ký tự kết quả như trong các trường hợp khác.
Copy string trong C++ bằng hàm substr
Chúng ta cũng có thể sử dụng hàm substr() để copy một phạm vi chỉ định từ trong string ban đầu. Ví dụ cụ thể:
|
Kết quả, các chuỗi string được copy trong phạm vi chỉ định như sau:
ell |
Chi tiết về hàm substr xin vui lòng xem tại bài viết:
- Xem thêm: Hàm substr trong C++
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn về các cách copy string trong C++ rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về C++ trong các bài học tiếp theo.
URL Link
https://laptrinhcanban.com/cpp/lap-trinh-cpp-co-ban/string-trong-cpp/copy-string-trong-cpp/
HOME › lập trình c++ cơ bản dành cho người mới học lập trình>>16. string trong c++