stdlib.h trong C | Thư viện C chuẩn




stdlib.h trong C

Header file có tên stdlib.h trong Thư viện C chuẩn định nghĩa 4 kiểu biến, một số macro và các hàm đa dạng để thực hiện các tính năng chung.

Các biến được định nghĩa trong stdlib.h

Dưới đây liệt kê một số kiểu biến được định nghĩa trong stdlib.h:

STT Biến & Miêu tả
1

size_t

Đây là kiểu nguyên không dấu và là kết quả của từ khóa sizeof

2

wchar_t

Đây là một kiểu nguyên có kích cỡ là một hằng wide char

3

div_t

Đây là cấu trúc được trả về bởi hàm div

4

ldiv_t

Đây là cấu trúc được trả về bởi hàm ldiv

Các macro được định nghĩa trong stdlib.h

Bảng dưới liệt kê một số Macro được định nghĩa trong stdlib.h:

STT Macro & Miêu tả
1

NULL

Macro này là giá trị của một hằng con trỏ null

2

EXIT_FAILURE

Đây là giá trị cho hàm exit để trả về trong trường hợp thất bại

3

EXIT_SUCCESS

Đây là giá trị cho hàm exit để trả về trong trường hợp thành công

4

RAND_MAX

Macro này là giá trị lớn nhất được trả về bởi hàm rand

5

MB_CUR_MAX

Macro này là số byte lớn nhất trong một tập ký tự có nhiều byte mà không thể lớn hơn MB_LEN_MAX

Các hàm được định nghĩa trong stdlib.h

Sau đây là một số hàm được định nghĩa trong stdio.h:

STT Hàm & Miêu tả
1

Hàm double atof(const char *str)

Chuyển đổi một chuỗi được trỏ tới bởi tham số str thành một số thực dấu chấm động (kiểu double)

2

Hàm int atoi(const char *str)

Chuyển đổi một chuỗi được trỏ tới bởi tham số str thành một số nguyên (kiểu int)

3

Hàm long int atol(const char *str)

Chuyển đổi một chuỗi được trỏ tới bởi tham số str thành một số long int

4

Hàm double strtod(const char *str, char **endptr)

Chuyển đổi một chuỗi được trỏ tới bởi tham số str thành một số thực dấu chấm động (kiểu double)

5

Hàm long int strtol(const char *str, char **endptr, int base)

Chuyển đổi một chuỗi được trỏ tới bởi tham số str thành một số long int

6

Hàm unsigned long int strtoul(const char *str, char **endptr, int base)

Chuyển đổi một chuỗi được trỏ tới bởi tham số str thành một số unsigned long int

7

Hàm void *calloc(size_t nitems, size_t size)

Cấp phát bộ nhớ được yêu cầu và trả về một con trỏ tới nó

8

Hàm void free(void *ptr

Giải phóng bộ nhớ đã được cấp phát trước đó bởi một lời gọi tới calloc, malloc, hoặc realloc

9

Hàm void *malloc(size_t size)

Cấp phát bộ nhớ được yêu cầu và trả về một con trỏ tới nó

10

Hàm void *realloc(void *ptr, size_t size)

Cố gắng để phục hồi khối bộ nhớ được trỏ tới bởi str mà đã được cấp phát trước đó với một lời gọi tới malloc hoặc calloc

11

Hàm void abort(void)

Gây ra một sự kết thúc chương trình bất thường

12

Hàm int atexit(void (*func)(void))

Làm cho hàm func đã cho để được gọi khi chương trình kết thúc theo cách thông thường

13

Hàm void exit(int status)

Làm chương trình kết thúc một cách thông thường

14

Hàm char *getenv(const char *name)

Tìm kiếm chuỗi môi trường được trỏ tới bởi name và trả về giá trị gắn kết với chuỗi đó

15

Hàm int system(const char *string)

Lệnh được xác định bởi string được truyền tới môi trường host để được thực hiện bởi Command Processor

16

Hàm void *bsearch(const void *key, const void *base, size_t nitems, size_t size, int (*compar)(const void *, const void *))

Thực hiện một Binary Search

17

Hàm void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))

Sắp xếp một mảng

18

Hàm int abs(int x)

Trả về giá trị tuyệt đối của x

19

Hàm div_t div(int numer, int denom)

Chia tử số numer cho mẫu số demon

20

Hàm long int labs(long int x)

Trả về giá trị tuyệt đối của x

21

Hàm ldiv_t ldiv(long int numer, long int denom)

Chia tử số numer cho mẫu số demon

22

Hàm int rand(void)

Trả về một số ngẫu nhiên trong dãy giá trị từ 0 tới RAND_MAX

23

Hàm void srand(unsigned int seed)

Hàm này cung cấp seed cho bộ sinh số ngẫu nhiên được sử dụng bởi hàm rand

24

Hàm int mblen(const char *str, size_t n)

Trả về độ dài của một multi-byte char được trỏ tới bởi tham số str

25

Hàm size_t mbstowcs(schar_t *pwcs, const char *str, size_t n)

Chuyển đổi chuỗi các multi-byte char được trỏ tới bởi tham số str thành mảng được trỏ tới bởi pwcs

26

Hàm int mbtowc(whcar_t *pwc, const char *str, size_t n)

Chuyển đổi một multi-byte sequence thành một wide char

27

Hàm size_t wcstombs(char *str, const wchar_t *pwcs, size_t n)

Chuyển đổi các code được lưu trữ trong mảng pwcs thành các multi-byte char và lưu trữ chúng trong chuỗi str

28

Hàm int wctomb(char *str, wchar_t wchar)

Chuyển đổi wide char thành biểu diễn multi-byte char của nó và lưu trữ nó tại phần đầu mảng ký tự được trỏ tới bởi str

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack

Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài Thư viện C phổ biến khác tại VietJack:




Tài liệu giáo viên