Hàm memchr() trong C

Hàm void *memchr(const void *str, int c, size_t n) tìm kiếm sự xuất hiện đầu tiên của ký tự c (một unsigned char) trong n byte đầu tiên của chuỗi được trỏ tới bởi tham số str.

Khai báo hàm memchr() trong C

Dưới đây là phần khai báo cho memchr() trong C:

void *memchr(const void *str, int c, size_t n)

Tham số

str -- Đây là con trỏ tới khối bộ nhớ nơi mà việc tìm kiếm được thực hiện.

c -- Đây là giá trị để được truyền dưới dạng một int, nhưng hàm thực hiện tìm kiếm theo từng byte bởi sử dụng sự chuyển đổi unsigned char của giá trị này.

n -- Đây là số byte để được phân tích.

Trả về giá trị

Hàm này trả về một con trỏ tới byte kết nối hoặc NULL nếu ký tự không xuất hiện trong khu vực bộ nhớ đã cho.

Ví dụ

Chương trình C sau minh họa cách sử dụng của memchr() trong C:

#include <stdio.h>
#include <string.h>

int main ()
{
  char * pch;
  char str[] = "Hoc C co ban va nang cao tai QTM";
  pch = (char*) memchr (str, 'v', strlen(str));
  if (pch!=NULL)
    printf ("Tim thay 'v' tai vi tri %d.\n", pch-str+1);
  else
    printf ("Khong tim thay ky tu 'v'.\n");
  return 0;
}

Biên dịch và chạy chương trình C trên sẽ cho kết quả:

Biên dịch và chạy chương trình C để xem kết quả

Theo Tutorialspoint

Bài trước: string.h trong C

Bài tiếp: Hàm memcmp() trong C

Thứ Bảy, 01/09/2018 17:16
52 👨 807
Xác thực tài khoản!

Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:

Số điện thoại chưa đúng định dạng!
Số điện thoại này đã được xác thực!
Bạn có thể dùng Sđt này đăng nhập tại đây!
Lỗi gửi SMS, liên hệ Admin
0 Bình luận
Sắp xếp theo
    ❖ Lập trình C