30/09/2018, 17:05

[LT C] Xử lý chuỗi. (Xoá một từ trong chuỗi thêm bằng từ khác có độ dài hơn)

E/mình có vấn đề cần giải quyết là:
E/mình có 1 chuỗi: Thang 6 la thang thi hoc ky
E/mình có chuỗi 2: dong tien
Bây giờ e/mình muốn bỏ từ thi trong chuỗi 1. thay vào đó là dong tien tại ví trí thi đã xoá.
Ai có cao kiến gì ko ạ?
Chuỗi sau có độ dài hơn chuỗi bị xoá.
Em đã suy nghĩ và thử một số cách nhưng chưa thành công @@. Mong mọi người chia sẻ!

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

bạn xem cách dịch chuyển n kí tự phía đuôi. Xem thêm hàm strcpy.

Khải Phan viết 19:14 ngày 30/09/2018

Nếu như đã có 1 chuỗi và biết bạn sẽ xóa chữ nào trong đó thì bạn sẽ biết vị trí bắt đầu xóa, và xóa bao nhiêu ký tự.

Bạn dùng hàm:
string& erase (size_t pos = 0, size_t len = npos);

Sau đó dùng hàm:
string& insert (size_t pos, const string& str);

À bổ sung thêm là muốn tìm vị trí chữ cần xóa thì bạn dùng bên dưới, nó sẽ trả về vị trí tìm được chữ đó.

size_t find (const string& str, size_t pos = 0)

Thử xem được không nhé.

Bài liên quan
0