Làm cách nào để phân tích chuỗi bằng strpbrk() trong lập trình C?

Lam Cach Nao De Phan Tich Chuoi Bang Strpbrk Trong Lap Trinh C



Một nhiệm vụ cơ bản trong lập trình là phân tích chuỗi và lập trình C cung cấp một số chức năng để thực hiện việc này. Các strpbrk() hàm là một trong những hàm được sử dụng để phân tích chuỗi. Hàm linh hoạt này có thể được sử dụng để tìm kiếm sự xuất hiện đầu tiên của bất kỳ ký tự nào trong một chuỗi ký tự được liệt kê trong một biến chuỗi. Bài viết này sẽ mô tả kỹ lưỡng cách phân tích chuỗi trong C bằng cách sử dụng strpbrk() chức năng.

Cách phân tích chuỗi bằng strpbrk() trong lập trình C

Cú pháp của strpbrk() chức năng như sau:







than * strpbrk ( const char * str1, const ký tự * str2 ) ;


Hàm yêu cầu hai đối số; str1 và str2, tương ứng là văn bản cần tìm và tập hợp các ký tự cần tìm. Hàm này trả về con trỏ của ký tự trong str1. Hàm trả về NULL nếu không khớp.



Bây giờ, hãy xem một ví dụ về cách sử dụng strpbrk() để phân tích một chuỗi.



#include
#include

int chính ( ) {
char str [ năm mươi ] = 'Bài viết này được viết cho Linuxhint' ;
than * trận đấu = strpbrk ( đường, 'Ô' ) ;
nếu như ( cuộc thi đấu ! = KHÔNG ) {
bản inf ( 'Xuất hiện đầu tiên của 'o' là ở vị trí %ld \N ' , trận đấu - str ) ;
} khác {
bản inf ( 'Không tìm thấy kết quả phù hợp. \N ' ) ;
}

trở lại 0 ;
}


Trong đoạn mã trên, str và “o” là hai đối số chúng ta chuyển đến strpbrk() chức năng. Hàm tìm kiếm phiên bản đầu tiên của chữ “o” trong chuỗi str. Hàm trả về một tham chiếu đến vị trí trong chuỗi mà kết quả khớp được phát hiện. Vị trí của trận đấu trong chuỗi sau đó được xác định bằng cách sử dụng số học con trỏ.





đầu ra


Các strpbrk() chức năng cũng có thể được sử dụng để phân tích cú pháp một chuỗi cho nhiều ký tự. Ví dụ:



#include
#include

int chính ( ) {
char str [ năm mươi ] = 'Bài viết này được viết cho Linuxhint' ;
than * trận đấu = strpbrk ( đường, 'bạn nợ' ) ;
nếu như ( cuộc thi đấu ! = KHÔNG ) {
bản inf ( 'Xuất hiện đầu tiên của bất kỳ nguyên âm nào là ở vị trí %ld \N ' , trận đấu - str ) ;
} khác {
bản inf ( 'Không tìm thấy kết quả phù hợp. \N ' ) ;
}

trở lại 0 ;
}


Trong trường hợp này, hàm tìm kiếm sự xuất hiện đầu tiên của bất kỳ nguyên âm nào trong chuỗi. Nếu tìm thấy kết quả trùng khớp, hàm sẽ trả về một con trỏ tới vị trí trong chuỗi nơi tìm thấy kết quả trùng khớp.

đầu ra


Điều quan trọng cần ghi nhớ là strpbrk() tìm phiên bản đầu tiên của các ký tự trong tập hợp vì nó quét chuỗi từ trái sang phải. Nếu bạn muốn tìm phiên bản cuối cùng của một ký tự trong một chuỗi, bạn có thể sử dụng strchr() chức năng.

Phần kết luận

Trong lập trình C, các strpbrk() là một chức năng hữu ích để phân tích chuỗi. Nó cho phép bạn tìm kiếm bất kỳ ký tự nào trong một tập hợp các ký tự trong mỗi chuỗi mà nó xuất hiện lần đầu tiên. Bạn có thể tạo các chương trình hiệu quả hơn bằng cách hiểu cú pháp và cách sử dụng chức năng này.