01/10/2018, 14:23

Lặp lại count lần một chuỗi kí tự bất kì được truyền vào

mọi người ơi, cho mình hỏi khi dùng Hàm làm công việc như này:
input: repeatStr(5, “Hello”) —> output: “HelloHelloHelloHelloHello”

Hàm:
char repeat_str(int count, char src) {
}

copy xâu src count lần. khi đấy xâu kết quả có độ dài: count*strlen(src).

nhưng không thể lấy độ dài của xâu src vì xâu src này không khai báo phần tử tối đa, trong khi đầu bài lại yêu cầu xâu truyền vào là bất kì.
vậy em phải sửa nó như nào cho ổn vậy ạ…
Em mới học nên mong mọi người giúp đỡ…!!!

rogp10 viết 16:30 ngày 01/10/2018

Phải là char* mới đúng.

Thực ra bạn không cần biết vùng nhớ src đâu chỉ cần độ dài chuỗi thôi. Bạn cũng viết[quote=“Doc_Hanh_Vu, post:1, topic:62470”]
khi đấy xâu kết quả có độ dài: count*strlen(src).
[/quote]
mà.

Lucifer viết 16:39 ngày 01/10/2018

A…!!
lúc này cần dùng con trỏ rồi khai báo malloc cho nó mới dùng hàm strlen () được phải k bác

rogp10 viết 16:23 ngày 01/10/2018

Không đúng, bạn phải gọi strlen() trước thì mới có số byte cho malloc được.

Lucifer viết 16:23 ngày 01/10/2018

Ưhmmm…!!!
đúng rồi bác ạ, em biết em sai đâu rồi…!!
cám ơn bác…!

Bài liên quan
0