01/10/2018, 10:23
Function tìm từ trong chuỗi (lập trình C)
chỉ với kiến thức của lập trình C cho mình hỏi có ai viết được function tìm từ trong chuỗi kí tự giống như hàm “strchr”? và chỉ cho mình hướng giải quyết với…tks vì đã quan tâm!
Bài liên quan
Theo mình nghĩ là hoàn toàn có thể.
Cái hàm của bạn sẽ tìm với
char
được cho. Khi mà tìm được vị trí củachar
được cho trongarray char
ban đầu thì bạn khai báo một mảngRồi bạn chạy for từ vị trí tìm được tới vị trí cuối cùng của
char ban đầu
và gán từng kí tự một vàonewchar
. Và cuối cùng nhớ add thêm\0
vào chonewchar
nữa.mình hiểu ý bạn, tks. Nhưng mình vẫn còn thắc mắc nữa là "nếu tạo function thì cái newchar đó là của function, vậy sau đó mình xuất cái newchar đó ra function main ntn? //Đang cảm thấy rối não…
Bạn đã biết tới cái
malloc
chưa?Không, strchr không cần vùng nhớ mới.
Mình vẫn chưa hình dung thế nào mà ta có thể
return
được một chuỗi mà không dùngmalloc
.Vậy là bạn chưa xem docs. Nó không trả về cả chuỗi đâu.
Hiểu ra rồi cám ơn bạn đã chỉ giáo ^^
Làm được cái này thì chỉ cần hiểu một tí về con trỏ là làm được à .
Nó chỉ đơn giản là cái địa chỉ và printf sẽ tới đó lấy từng phần tử trong từng địa chỉ ra tới khi nào nó gặp
\0
.Bài này bạn chỉ cần đơn giản là cộng lên tới khi nào mà
*s
không bằng với kí tự bạn muốn tìm. Khi bạn trả về convert nó sang(char *)
đểreturn
Dưới đây là đoạn code của mình. Coi nếu bạn nghĩ nó vẫn còn mông lung
tks các bạn. Mình mới bắt đầu với C và C là ng.ngữ đầu tiên và chưa biết malloc là gì. Mình đang tự học nên cũng hơi khó khăn, rất cảm ơn ý kiến của các bạn. Mình hiểu vấn đề rồi.
Chưa biết malloc thì đừng để ý đến nó làm gì, nếu muốn lên C++ thì học luôn cấp phát động của C++