SlideShare a Scribd company logo
1 of 6
TÓM TẮC MỘT SỐ HÀM CHUẨN CỦA TURBO C
1.CÁC HÀM CHUYỂN ĐỎI DỬ LIỆU
* Các hàm sau khai báo trong ctype.h
- tolower
int tolower(int c);
Đổi từ chử hoa sang chử thường.
- toupper
int toupper(int c);
Đổi từ chử thường sang chử hoa.
* Các hàm dưới đây khai báo trong stdlib.h
- atof
double atof(char *s);
Chuyển chuổi s sang giá trị double.
- atoi
int atoi(char *s);
Chuyển chuổi s sang giá trị int.
- atol
long atol(char *s);
Chuyển chuổi s sang giá trị long.
- itoa
char *itoa(int x, char *s, int cs);
Chuyển số nguyên x trong hệ đếm cơ số cs(cs=10: hệ 10, cs=8: hệ 8, cs=16: hệ 16)
sang chuổi và lưu vào vùng nhớ s. Hàm trả về địa chỉ của vùng s.
- ltoa
char *ltoa(long x, char *s, int cs);
Chuyển số kiểu long x trong hệ đếm cơ số cs(cs=10: hệ 10, cs=8: hệ 8, cs=16: hệ 16)
sang chuổi và lưu vào vùng nhớ s. Hàm trả về địa chỉ của vùng s.
- ultoa
char *ultoa(unsigned long x, char *s, int cs);
Chuyển số kiểu unsigned long x trong hệ đếm cơ số cs(cs=10: hệ 10, cs=8: hệ 8,
cs=16: hệ 16) sang chuổi và lưu vào vùng nhớ s. Hàm trả về địa chỉ của vùng s.
2.CÁC HÀM KIỂM TRA KÝ TỰ.
Các hàm dưới đây (khai báo trong ctype.h) dùng để kiểm tra một ký tự có thuộc một
tập ký tự nào đó ko Nếu thuộc thì hàm trả về giá trị khác không, trái lại hàm trả về
không.
- isalnum
int isalnum(int kt);
Kiểm tra kt có phải là ký tự alphanumeric (chử cái hoặc chử số)?
- isalpha
int isalpha(int kt);
Kiểm tra kt có phải là chữ cái ko?
- iscntrl
int iscntrl(int kt);
Kiểm tra kt có phải là ký tự điều khiển (mã từ 0 đến 0x1F hoặc mã bằng 0x7F
1
(DEL))?
- isdigit
int isdigit(int kt);
Kiểm tra kt có phải chữ số ko?
- isgraph
int isgraph(int kt);
Kiểm tra kt có phải là ký tự in được và khác ký tự trống (mã từ 0x21 đến 0x7E)?
- islower
int islower(int kt);
Kiểm tra kt có phải là chử cái thường (từ a đến z)?
- isprintf
int isprintf(int kt);
Kiểm tra kt có phải là ký tự in được kể cả ký tự trống (mã từ 0x20 đến 0x7E)?
- ispunct
int ispunct(int kt);
Kiểm tra kt có phải là ký tự dấu chấm câu ko?
- isspace
int isspace(int kt);
Kiểm tra kt có phải là ký tự trống ko?
- isupper
int isupper(int kt);
Kiểm tra kt có phải là chử hoa (từ A đến Z)?
- isxdigit
int isxdigit(int kt);
Kiểm tra kt có phải là chữ số hệ 16 (gồm chử số, các chữ a đến f và từ A đến F)?
3.CÁC HÀM XỬ LÝ CHUỔI KÝ TỰ.
Các hàm này khai báo trong string.h
- strrchr Tìm lần xuất hiện cuối cùng của ký tự trong chuổi.
char *strrchr(char *s, int kt);
Công dụng: Tìm lần xuất hiện cuối cùng của kt trong s. Nếu tìm thấy hàm cho địa chỉ
của ký tự tìm được trong s, trái lại cho NULL.
- strcmpi So sánh hai chuổi không phân biệt chữ hoa và chữ thường.
int strcmpi (char *s1, char *s2);
Hàm làm việc như strcmp nhưng không phân biệt chữ hoa và chữ thường khi so sánh.
- strcspn Tìm độ dài đoạn đầu của chuổi.
int strcspn(char *s, char *s_con);
Hàm cho độ dài đoạn đầu (lớn nhất có thể) của s, mà mọi ký tự của đoạn ko có mặt
trong chuổi s_con.
- strspn Tìm độ dài đoạn đầu của chuổi.
int strcspn(char *s, char *s_con);
Hàm cho độ dài đoạn đầu (lớn nhất có thể) của s, mà mọi ký tự của đoạn đều có mặt
trong chuổi s_con.
- strdup Gấp đôi một chuỗi.
char *strdup(char *s);
Công dụng: hàm cấp một vùng nhớ để đặt hai lần chuổi s. Nếu thành công hàm cho
2
địa chỉ vùng này, trái lại hàm cho NULL.
- strncat Ghép thêm n ký tự vào chuổi.
char *strncat(char *s_nhan, char *s, int n);
Công dụng: Ghép n ký tự đầu tiên của s vào s_nhan.
- strncmp So sánh n ký tự đầu của hai chuổi.
int *strncmp(char *s1, char *s2, int n);
Hàm tiến hành so sánh n ký tự đầu tiên của s1 và s2.
- strnicmp So sánh n ký tự đầu của hai chuổi không phân biệt chử hoa với chử thường.
int *strnicmp(char *s1, char *s2, int n);
- strncpy Sao n ký tự.
char *strncpy(char *s_nhan, char *s_gui, int n);
Hàm sao chép n ký tự đầu của s_gui sang s_nhan.
- strnset Gán n lần một ký tự cho một chuổi.
char *strnset(char *s, int c, int n);
Công dụng: ký tự c sẽ đc gán n lần cho s. Kết quả s là một chuổi gồm n ký tự đều là c.
- strrev Đảo ngược chuổi.
char *strrev(char *s);
Công dụng: đảo ngược các ký tự trong chuổi s. Hàm cho địa chỉ chuổi đã đảo.
- strset Đặt một ký tự vào mọi vị trí của chuổi.
int *strset (char *s, int kt);
Công dụng: thay mọi ký tự trong s bằng kt.
5.CÁC HÀM TOÁN HỌC.
Các hàm sau khai báo trong stdlib.h
- abs
int abs(int x);
Tính giá trị tuyệt đối của số nguyên x.
- labs
long int labs(long int x);
Tính giá trị tuyệt đối của số nguyên dài x.
- rand
int rand(void);
Cho một giá trị ngẩu nhiên từ 0 đến 32767.
- random
int random(int n);
Cho một giá trị ngẩu nhiên từ 0 đến n-1.
- srand
void srand(unsigned seed);
Khởi đầu bội số ngẩu nhiên bằng giá trị seed.
- randomize
void randomize(void);
Khởi đầu bội số ngẩu nhiên bằng giá trị ngẩu nhiên.
Chú ý: hàm này dùng hàm time trong <time.h>
Các hàm sau khai báo trong math.h
- ceil
double ceil(double x);
Xác định số nguyên (kiểu double) bé nhất trên x.
3
- cos
double cos (double x);
Tính cosine cua x
- sin
double sin(double x);
Tính sine cua x.
- tan
double tan(double x);
Tính tangent của x.
- exp
double exp(double x);
Tính e mủ x.
- fabs
double fabs(double x);
Tính giá trị tuyệt đối của x.
- log
double log(double x);
Tính logarit tự nhiên của x (ln x).
- log10
double log10(double x);
Tính logảit cơ số 10 của x.
- pow
double pow(double x, double y);
Tính x mủ y.
6. CÁC HÀM CẤP PHÁT BỘ NHỚ
Các hàm này khai báo trong alloc.h
- calloc Cấp phát bộ nhớ cho n đối tượng kích cở size byte
void *calloc( unsigned n, unsigned size);
Công dụng: cấp phát vùng nhớ cho n *size byte. Nếu thành công hàm trả về địa chỉ
đầu vùng nhớ được cấp, khi không đủ bộ nhớ để cấp phát hàm trả về NULL.
- malloc Cấp phát vùng nhớ cho n byte
void *malloc( unsigned n);
Công dụng: cấp phát vùng nhớ cho n byte. Nếu thành công hàm trả về địa chỉ đầu
vùng nhớ được cấp, khi không đủ bộ nhớ để cấp phát hàm trả về NULL.
- free Giải phóng vùng nhớ đã cấp phát
void free( void *ptr);
Công dụng: giải phóng vùng nhớ ( đã được cấp phát bởi malloc hoặc calloc) do ptr trỏ
tới.
- realloc Cấp phát lại bộ nhớ
void *realloc( void *ptr, unsigned size);
trong đó:
+ ptr là con trỏ trỏ đến một vùng nhớ đã được cấp phát từ trước
+ size là số byte cần cấp phát lại
4
Công dụng: Thay đổi kích thước của vùng nhớ đã cấp phát trước đó. Vùng nhớ mới có
thể có địa chỉ khác so với vùng nhớ cũ. Phần dữ liệu trên vùng nhớ cũ được chuyển
tới vùng nhớ mới và có thể tiếp tục sử dụng chúng.
Khi thành công hàm trả về địa chỉ vùng nhớ mới, trái lại hàm trả về NULL.
CÁC HÀM THỜI GIAN.
Các hàm này khai báo trong time.h
Các cấu trúc liên quan khai báo trong dos.h
- gettime Nhận giờ hệ thống
void gettime( struct time *t );
Kiểu cấu trúc time được định nghĩa trong dos.h như sau
struct time
{
unsigned ti_hour; /* Giờ */
unsigned ti_min; /* Phút */
unsigned ti_sec; /* Giây*/
unsigned ti_hund; /* Miligiây */
};
Công dụng: Hàm nhận giờ hệ thống và đặc vào các thành phần của một biến cấu trúc
kiểu time do con trỏ t trỏ tới
- settime Thiết lập giờ hệ thống
void settime( struct time *t );
Công dụng: Hàm đặc lại giờ hệ thống theo gia trị cá thành phần của một biến cấu trúc
kiểu time do con trỏ t trỏ tới.
- getdate Nhận ngày hệ thống.
void getdate( struct date *d );
Kiểu cấu trúc date được định nghĩa trong dos.h như sau
struct date
{
int da_year; /* Năm */
char da_mon; /* Tháng */
char da_day; /* Ngày */
};
Công dụng: Hàm nhận ngày hệ thống và đặt vào các thành phần của một biến cấu trúc
kiểu date do con trỏ d trỏ tới.
- setdate Thiết lập ngày hệ thống
void setdate( struct date *d );
Công dụng: Hàm đặc lại ngày hệ thống theo gia trị cá thành phần của một biến cấu
trúc kiểu date do con trỏ d trỏ tới.
- time Nhận thời gian hệ thống quy ra giây
long time( long *t );
Công dụng: Hàm cho thời gian hiện tại theo giây bắc đầu tính từ 0 giờ 0 phút 0 giây
(giờ GMT) ngày 01-01-1970.
5
Công dụng: Thay đổi kích thước của vùng nhớ đã cấp phát trước đó. Vùng nhớ mới có
thể có địa chỉ khác so với vùng nhớ cũ. Phần dữ liệu trên vùng nhớ cũ được chuyển
tới vùng nhớ mới và có thể tiếp tục sử dụng chúng.
Khi thành công hàm trả về địa chỉ vùng nhớ mới, trái lại hàm trả về NULL.
CÁC HÀM THỜI GIAN.
Các hàm này khai báo trong time.h
Các cấu trúc liên quan khai báo trong dos.h
- gettime Nhận giờ hệ thống
void gettime( struct time *t );
Kiểu cấu trúc time được định nghĩa trong dos.h như sau
struct time
{
unsigned ti_hour; /* Giờ */
unsigned ti_min; /* Phút */
unsigned ti_sec; /* Giây*/
unsigned ti_hund; /* Miligiây */
};
Công dụng: Hàm nhận giờ hệ thống và đặc vào các thành phần của một biến cấu trúc
kiểu time do con trỏ t trỏ tới
- settime Thiết lập giờ hệ thống
void settime( struct time *t );
Công dụng: Hàm đặc lại giờ hệ thống theo gia trị cá thành phần của một biến cấu trúc
kiểu time do con trỏ t trỏ tới.
- getdate Nhận ngày hệ thống.
void getdate( struct date *d );
Kiểu cấu trúc date được định nghĩa trong dos.h như sau
struct date
{
int da_year; /* Năm */
char da_mon; /* Tháng */
char da_day; /* Ngày */
};
Công dụng: Hàm nhận ngày hệ thống và đặt vào các thành phần của một biến cấu trúc
kiểu date do con trỏ d trỏ tới.
- setdate Thiết lập ngày hệ thống
void setdate( struct date *d );
Công dụng: Hàm đặc lại ngày hệ thống theo gia trị cá thành phần của một biến cấu
trúc kiểu date do con trỏ d trỏ tới.
- time Nhận thời gian hệ thống quy ra giây
long time( long *t );
Công dụng: Hàm cho thời gian hiện tại theo giây bắc đầu tính từ 0 giờ 0 phút 0 giây
(giờ GMT) ngày 01-01-1970.
5

More Related Content

What's hot

Nmlt C03 Cac Kieu Du Lieu Co So
Nmlt C03 Cac Kieu Du Lieu Co SoNmlt C03 Cac Kieu Du Lieu Co So
Nmlt C03 Cac Kieu Du Lieu Co SoCuong
 
Nmlt c11 con_trocoban_in
Nmlt c11 con_trocoban_inNmlt c11 con_trocoban_in
Nmlt c11 con_trocoban_inHuy Nguyễn
 
Nmlt C07 Mang1 Chieu
Nmlt C07 Mang1 ChieuNmlt C07 Mang1 Chieu
Nmlt C07 Mang1 ChieuCuong
 
Chuong10
Chuong10Chuong10
Chuong10na
 
Ctdl C05
Ctdl C05Ctdl C05
Ctdl C05giang
 
3 Function
3 Function3 Function
3 FunctionCuong
 
Phan2 chuong5 ctrinhcon
Phan2 chuong5 ctrinhconPhan2 chuong5 ctrinhcon
Phan2 chuong5 ctrinhconLy hai
 
Hàm và Chuỗi
Hàm và ChuỗiHàm và Chuỗi
Hàm và Chuỗipnanhvn
 

What's hot (17)

Session 09
Session 09Session 09
Session 09
 
Nmlt c09 chuoi_kytu
Nmlt c09 chuoi_kytuNmlt c09 chuoi_kytu
Nmlt c09 chuoi_kytu
 
Nmlt C03 Cac Kieu Du Lieu Co So
Nmlt C03 Cac Kieu Du Lieu Co SoNmlt C03 Cac Kieu Du Lieu Co So
Nmlt C03 Cac Kieu Du Lieu Co So
 
Nmlt c11 con_trocoban_in
Nmlt c11 con_trocoban_inNmlt c11 con_trocoban_in
Nmlt c11 con_trocoban_in
 
Nmlt C07 Mang1 Chieu
Nmlt C07 Mang1 ChieuNmlt C07 Mang1 Chieu
Nmlt C07 Mang1 Chieu
 
Chuong10
Chuong10Chuong10
Chuong10
 
Ctdl C05
Ctdl C05Ctdl C05
Ctdl C05
 
Control structure in C
Control structure in CControl structure in C
Control structure in C
 
C đến C++ phần 1
C đến C++ phần 1C đến C++ phần 1
C đến C++ phần 1
 
3 Function
3 Function3 Function
3 Function
 
Phan2 chuong5 ctrinhcon
Phan2 chuong5 ctrinhconPhan2 chuong5 ctrinhcon
Phan2 chuong5 ctrinhcon
 
Slide pointer sepro
Slide pointer seproSlide pointer sepro
Slide pointer sepro
 
Basic C programming
Basic C programmingBasic C programming
Basic C programming
 
Hàm và Chuỗi
Hàm và ChuỗiHàm và Chuỗi
Hàm và Chuỗi
 
Nmlt c06 ham
Nmlt c06 hamNmlt c06 ham
Nmlt c06 ham
 
Tut5 solution
Tut5 solutionTut5 solution
Tut5 solution
 
Nmlt c08 mang2_chieu
Nmlt c08 mang2_chieuNmlt c08 mang2_chieu
Nmlt c08 mang2_chieu
 

Viewers also liked

Bài tập CTDL và GT 7
Bài tập CTDL và GT 7Bài tập CTDL và GT 7
Bài tập CTDL và GT 7Hồ Lợi
 
Chuong 4 danh sach lien ket
Chuong 4   danh sach lien ketChuong 4   danh sach lien ket
Chuong 4 danh sach lien ketHoàng Đức
 
Chuong2 extra c_
Chuong2 extra c_Chuong2 extra c_
Chuong2 extra c_Hồ Lợi
 
Bài tập CTDL và GT 3
Bài tập CTDL và GT 3Bài tập CTDL và GT 3
Bài tập CTDL và GT 3Hồ Lợi
 
FPT Polytechnic Profile 2016
FPT Polytechnic Profile 2016FPT Polytechnic Profile 2016
FPT Polytechnic Profile 2016FPT Polytechnic
 
Danh Sach Lien Ket
Danh Sach Lien KetDanh Sach Lien Ket
Danh Sach Lien KetTony Nhân
 
Bài tập CTDL và GT 1
Bài tập CTDL và GT 1Bài tập CTDL và GT 1
Bài tập CTDL và GT 1Hồ Lợi
 
Bài tập CTDL và GT 12
Bài tập CTDL và GT 12Bài tập CTDL và GT 12
Bài tập CTDL và GT 12Hồ Lợi
 

Viewers also liked (20)

Chuong7
Chuong7Chuong7
Chuong7
 
Bài tập CTDL và GT 7
Bài tập CTDL và GT 7Bài tập CTDL và GT 7
Bài tập CTDL và GT 7
 
Xu ly chuoi
Xu ly chuoiXu ly chuoi
Xu ly chuoi
 
Nguyen lyoop
Nguyen lyoopNguyen lyoop
Nguyen lyoop
 
Chuong3 c
Chuong3 c Chuong3 c
Chuong3 c
 
Chuong 4 danh sach lien ket
Chuong 4   danh sach lien ketChuong 4   danh sach lien ket
Chuong 4 danh sach lien ket
 
Chuong1 c
Chuong1 c Chuong1 c
Chuong1 c
 
Chuong6 (2)
Chuong6 (2)Chuong6 (2)
Chuong6 (2)
 
Chuong2 extra c_
Chuong2 extra c_Chuong2 extra c_
Chuong2 extra c_
 
Bài tập CTDL và GT 3
Bài tập CTDL và GT 3Bài tập CTDL và GT 3
Bài tập CTDL và GT 3
 
FPT Polytechnic Profile 2016
FPT Polytechnic Profile 2016FPT Polytechnic Profile 2016
FPT Polytechnic Profile 2016
 
Chuong1
Chuong1Chuong1
Chuong1
 
Chuong8 (2)
Chuong8 (2)Chuong8 (2)
Chuong8 (2)
 
Chuong5 (2)
Chuong5 (2)Chuong5 (2)
Chuong5 (2)
 
Chuong4 (2)
Chuong4 (2)Chuong4 (2)
Chuong4 (2)
 
Chuong2 c
Chuong2 c Chuong2 c
Chuong2 c
 
Chuong 1
Chuong 1Chuong 1
Chuong 1
 
Danh Sach Lien Ket
Danh Sach Lien KetDanh Sach Lien Ket
Danh Sach Lien Ket
 
Bài tập CTDL và GT 1
Bài tập CTDL và GT 1Bài tập CTDL và GT 1
Bài tập CTDL và GT 1
 
Bài tập CTDL và GT 12
Bài tập CTDL và GT 12Bài tập CTDL và GT 12
Bài tập CTDL và GT 12
 

Similar to Tóm tắt các hàm chuẩn của c

Similar to Tóm tắt các hàm chuẩn của c (20)

Cac ham trong thu vien cua c&c++
Cac ham trong thu vien cua c&c++Cac ham trong thu vien cua c&c++
Cac ham trong thu vien cua c&c++
 
Lec3. Ham.pdf
Lec3. Ham.pdfLec3. Ham.pdf
Lec3. Ham.pdf
 
Pointer vn
Pointer vnPointer vn
Pointer vn
 
3 Function
3 Function3 Function
3 Function
 
Session 13
Session 13Session 13
Session 13
 
Ngon ngu c theo chuan ansi
Ngon ngu c theo chuan ansiNgon ngu c theo chuan ansi
Ngon ngu c theo chuan ansi
 
Session 17
Session 17Session 17
Session 17
 
Chuong 2
Chuong 2Chuong 2
Chuong 2
 
Stl string
Stl stringStl string
Stl string
 
344444
344444344444
344444
 
Lect09 string
Lect09 stringLect09 string
Lect09 string
 
Phan 2 chuong 8 (chuoi ky tu)
Phan 2   chuong 8 (chuoi ky tu)Phan 2   chuong 8 (chuoi ky tu)
Phan 2 chuong 8 (chuoi ky tu)
 
Lect04 functions
Lect04 functionsLect04 functions
Lect04 functions
 
Hàm can bản
Hàm can bảnHàm can bản
Hàm can bản
 
Chuong 05
Chuong 05Chuong 05
Chuong 05
 
hàm_nocopy.pdf
hàm_nocopy.pdfhàm_nocopy.pdf
hàm_nocopy.pdf
 
Cac ham va thu tuc trong pascal
Cac ham va thu tuc trong pascalCac ham va thu tuc trong pascal
Cac ham va thu tuc trong pascal
 
7 stl c++
7   stl c++7   stl c++
7 stl c++
 
lap trinh c Phan2 chuong5
 lap trinh c Phan2 chuong5 lap trinh c Phan2 chuong5
lap trinh c Phan2 chuong5
 
Session 4
Session 4Session 4
Session 4
 

More from Hồ Lợi

Ky thuatkhudequy
Ky thuatkhudequyKy thuatkhudequy
Ky thuatkhudequyHồ Lợi
 
Itt epc assignment
Itt epc assignmentItt epc assignment
Itt epc assignmentHồ Lợi
 
Huong danontapc
Huong danontapcHuong danontapc
Huong danontapcHồ Lợi
 
H hai epc_baitap
H hai epc_baitapH hai epc_baitap
H hai epc_baitapHồ Lợi
 
Giaotrinhbaitapkythuatlaptrinh
GiaotrinhbaitapkythuatlaptrinhGiaotrinhbaitapkythuatlaptrinh
GiaotrinhbaitapkythuatlaptrinhHồ Lợi
 
Giao trinh ky thuat lap trinh 2
Giao trinh ky thuat lap trinh 2Giao trinh ky thuat lap trinh 2
Giao trinh ky thuat lap trinh 2Hồ Lợi
 
Giao trinh c c++
Giao trinh c c++Giao trinh c c++
Giao trinh c c++Hồ Lợi
 
Epc assignment
Epc assignmentEpc assignment
Epc assignmentHồ Lợi
 
Epc test practical
Epc test practicalEpc test practical
Epc test practicalHồ Lợi
 
De thic++ --th
De thic++ --thDe thic++ --th
De thic++ --thHồ Lợi
 
Cpl test1%20key
Cpl test1%20keyCpl test1%20key
Cpl test1%20keyHồ Lợi
 

More from Hồ Lợi (20)

T4
T4T4
T4
 
Ky thuatkhudequy
Ky thuatkhudequyKy thuatkhudequy
Ky thuatkhudequy
 
Itt epc assignment
Itt epc assignmentItt epc assignment
Itt epc assignment
 
Huong danontapc
Huong danontapcHuong danontapc
Huong danontapc
 
H hai epc_baitap
H hai epc_baitapH hai epc_baitap
H hai epc_baitap
 
Gtrinh oop
Gtrinh oopGtrinh oop
Gtrinh oop
 
Giaotrinhbaitapkythuatlaptrinh
GiaotrinhbaitapkythuatlaptrinhGiaotrinhbaitapkythuatlaptrinh
Giaotrinhbaitapkythuatlaptrinh
 
Giao trinh ky thuat lap trinh 2
Giao trinh ky thuat lap trinh 2Giao trinh ky thuat lap trinh 2
Giao trinh ky thuat lap trinh 2
 
Giao trinh c c++
Giao trinh c c++Giao trinh c c++
Giao trinh c c++
 
File trong c_
File trong c_File trong c_
File trong c_
 
Epc assignment
Epc assignmentEpc assignment
Epc assignment
 
Epc test practical
Epc test practicalEpc test practical
Epc test practical
 
De thic++ --th
De thic++ --thDe thic++ --th
De thic++ --th
 
Dethi c++ -lt
Dethi c++ -ltDethi c++ -lt
Dethi c++ -lt
 
Debug trong c
Debug trong cDebug trong c
Debug trong c
 
D05 stl
D05 stlD05 stl
D05 stl
 
Cpl test3
Cpl test3Cpl test3
Cpl test3
 
Cpl test2
Cpl test2Cpl test2
Cpl test2
 
Cpl test1
Cpl test1Cpl test1
Cpl test1
 
Cpl test1%20key
Cpl test1%20keyCpl test1%20key
Cpl test1%20key
 

Tóm tắt các hàm chuẩn của c

  • 1. TÓM TẮC MỘT SỐ HÀM CHUẨN CỦA TURBO C 1.CÁC HÀM CHUYỂN ĐỎI DỬ LIỆU * Các hàm sau khai báo trong ctype.h - tolower int tolower(int c); Đổi từ chử hoa sang chử thường. - toupper int toupper(int c); Đổi từ chử thường sang chử hoa. * Các hàm dưới đây khai báo trong stdlib.h - atof double atof(char *s); Chuyển chuổi s sang giá trị double. - atoi int atoi(char *s); Chuyển chuổi s sang giá trị int. - atol long atol(char *s); Chuyển chuổi s sang giá trị long. - itoa char *itoa(int x, char *s, int cs); Chuyển số nguyên x trong hệ đếm cơ số cs(cs=10: hệ 10, cs=8: hệ 8, cs=16: hệ 16) sang chuổi và lưu vào vùng nhớ s. Hàm trả về địa chỉ của vùng s. - ltoa char *ltoa(long x, char *s, int cs); Chuyển số kiểu long x trong hệ đếm cơ số cs(cs=10: hệ 10, cs=8: hệ 8, cs=16: hệ 16) sang chuổi và lưu vào vùng nhớ s. Hàm trả về địa chỉ của vùng s. - ultoa char *ultoa(unsigned long x, char *s, int cs); Chuyển số kiểu unsigned long x trong hệ đếm cơ số cs(cs=10: hệ 10, cs=8: hệ 8, cs=16: hệ 16) sang chuổi và lưu vào vùng nhớ s. Hàm trả về địa chỉ của vùng s. 2.CÁC HÀM KIỂM TRA KÝ TỰ. Các hàm dưới đây (khai báo trong ctype.h) dùng để kiểm tra một ký tự có thuộc một tập ký tự nào đó ko Nếu thuộc thì hàm trả về giá trị khác không, trái lại hàm trả về không. - isalnum int isalnum(int kt); Kiểm tra kt có phải là ký tự alphanumeric (chử cái hoặc chử số)? - isalpha int isalpha(int kt); Kiểm tra kt có phải là chữ cái ko? - iscntrl int iscntrl(int kt); Kiểm tra kt có phải là ký tự điều khiển (mã từ 0 đến 0x1F hoặc mã bằng 0x7F 1
  • 2. (DEL))? - isdigit int isdigit(int kt); Kiểm tra kt có phải chữ số ko? - isgraph int isgraph(int kt); Kiểm tra kt có phải là ký tự in được và khác ký tự trống (mã từ 0x21 đến 0x7E)? - islower int islower(int kt); Kiểm tra kt có phải là chử cái thường (từ a đến z)? - isprintf int isprintf(int kt); Kiểm tra kt có phải là ký tự in được kể cả ký tự trống (mã từ 0x20 đến 0x7E)? - ispunct int ispunct(int kt); Kiểm tra kt có phải là ký tự dấu chấm câu ko? - isspace int isspace(int kt); Kiểm tra kt có phải là ký tự trống ko? - isupper int isupper(int kt); Kiểm tra kt có phải là chử hoa (từ A đến Z)? - isxdigit int isxdigit(int kt); Kiểm tra kt có phải là chữ số hệ 16 (gồm chử số, các chữ a đến f và từ A đến F)? 3.CÁC HÀM XỬ LÝ CHUỔI KÝ TỰ. Các hàm này khai báo trong string.h - strrchr Tìm lần xuất hiện cuối cùng của ký tự trong chuổi. char *strrchr(char *s, int kt); Công dụng: Tìm lần xuất hiện cuối cùng của kt trong s. Nếu tìm thấy hàm cho địa chỉ của ký tự tìm được trong s, trái lại cho NULL. - strcmpi So sánh hai chuổi không phân biệt chữ hoa và chữ thường. int strcmpi (char *s1, char *s2); Hàm làm việc như strcmp nhưng không phân biệt chữ hoa và chữ thường khi so sánh. - strcspn Tìm độ dài đoạn đầu của chuổi. int strcspn(char *s, char *s_con); Hàm cho độ dài đoạn đầu (lớn nhất có thể) của s, mà mọi ký tự của đoạn ko có mặt trong chuổi s_con. - strspn Tìm độ dài đoạn đầu của chuổi. int strcspn(char *s, char *s_con); Hàm cho độ dài đoạn đầu (lớn nhất có thể) của s, mà mọi ký tự của đoạn đều có mặt trong chuổi s_con. - strdup Gấp đôi một chuỗi. char *strdup(char *s); Công dụng: hàm cấp một vùng nhớ để đặt hai lần chuổi s. Nếu thành công hàm cho 2
  • 3. địa chỉ vùng này, trái lại hàm cho NULL. - strncat Ghép thêm n ký tự vào chuổi. char *strncat(char *s_nhan, char *s, int n); Công dụng: Ghép n ký tự đầu tiên của s vào s_nhan. - strncmp So sánh n ký tự đầu của hai chuổi. int *strncmp(char *s1, char *s2, int n); Hàm tiến hành so sánh n ký tự đầu tiên của s1 và s2. - strnicmp So sánh n ký tự đầu của hai chuổi không phân biệt chử hoa với chử thường. int *strnicmp(char *s1, char *s2, int n); - strncpy Sao n ký tự. char *strncpy(char *s_nhan, char *s_gui, int n); Hàm sao chép n ký tự đầu của s_gui sang s_nhan. - strnset Gán n lần một ký tự cho một chuổi. char *strnset(char *s, int c, int n); Công dụng: ký tự c sẽ đc gán n lần cho s. Kết quả s là một chuổi gồm n ký tự đều là c. - strrev Đảo ngược chuổi. char *strrev(char *s); Công dụng: đảo ngược các ký tự trong chuổi s. Hàm cho địa chỉ chuổi đã đảo. - strset Đặt một ký tự vào mọi vị trí của chuổi. int *strset (char *s, int kt); Công dụng: thay mọi ký tự trong s bằng kt. 5.CÁC HÀM TOÁN HỌC. Các hàm sau khai báo trong stdlib.h - abs int abs(int x); Tính giá trị tuyệt đối của số nguyên x. - labs long int labs(long int x); Tính giá trị tuyệt đối của số nguyên dài x. - rand int rand(void); Cho một giá trị ngẩu nhiên từ 0 đến 32767. - random int random(int n); Cho một giá trị ngẩu nhiên từ 0 đến n-1. - srand void srand(unsigned seed); Khởi đầu bội số ngẩu nhiên bằng giá trị seed. - randomize void randomize(void); Khởi đầu bội số ngẩu nhiên bằng giá trị ngẩu nhiên. Chú ý: hàm này dùng hàm time trong <time.h> Các hàm sau khai báo trong math.h - ceil double ceil(double x); Xác định số nguyên (kiểu double) bé nhất trên x. 3
  • 4. - cos double cos (double x); Tính cosine cua x - sin double sin(double x); Tính sine cua x. - tan double tan(double x); Tính tangent của x. - exp double exp(double x); Tính e mủ x. - fabs double fabs(double x); Tính giá trị tuyệt đối của x. - log double log(double x); Tính logarit tự nhiên của x (ln x). - log10 double log10(double x); Tính logảit cơ số 10 của x. - pow double pow(double x, double y); Tính x mủ y. 6. CÁC HÀM CẤP PHÁT BỘ NHỚ Các hàm này khai báo trong alloc.h - calloc Cấp phát bộ nhớ cho n đối tượng kích cở size byte void *calloc( unsigned n, unsigned size); Công dụng: cấp phát vùng nhớ cho n *size byte. Nếu thành công hàm trả về địa chỉ đầu vùng nhớ được cấp, khi không đủ bộ nhớ để cấp phát hàm trả về NULL. - malloc Cấp phát vùng nhớ cho n byte void *malloc( unsigned n); Công dụng: cấp phát vùng nhớ cho n byte. Nếu thành công hàm trả về địa chỉ đầu vùng nhớ được cấp, khi không đủ bộ nhớ để cấp phát hàm trả về NULL. - free Giải phóng vùng nhớ đã cấp phát void free( void *ptr); Công dụng: giải phóng vùng nhớ ( đã được cấp phát bởi malloc hoặc calloc) do ptr trỏ tới. - realloc Cấp phát lại bộ nhớ void *realloc( void *ptr, unsigned size); trong đó: + ptr là con trỏ trỏ đến một vùng nhớ đã được cấp phát từ trước + size là số byte cần cấp phát lại 4
  • 5. Công dụng: Thay đổi kích thước của vùng nhớ đã cấp phát trước đó. Vùng nhớ mới có thể có địa chỉ khác so với vùng nhớ cũ. Phần dữ liệu trên vùng nhớ cũ được chuyển tới vùng nhớ mới và có thể tiếp tục sử dụng chúng. Khi thành công hàm trả về địa chỉ vùng nhớ mới, trái lại hàm trả về NULL. CÁC HÀM THỜI GIAN. Các hàm này khai báo trong time.h Các cấu trúc liên quan khai báo trong dos.h - gettime Nhận giờ hệ thống void gettime( struct time *t ); Kiểu cấu trúc time được định nghĩa trong dos.h như sau struct time { unsigned ti_hour; /* Giờ */ unsigned ti_min; /* Phút */ unsigned ti_sec; /* Giây*/ unsigned ti_hund; /* Miligiây */ }; Công dụng: Hàm nhận giờ hệ thống và đặc vào các thành phần của một biến cấu trúc kiểu time do con trỏ t trỏ tới - settime Thiết lập giờ hệ thống void settime( struct time *t ); Công dụng: Hàm đặc lại giờ hệ thống theo gia trị cá thành phần của một biến cấu trúc kiểu time do con trỏ t trỏ tới. - getdate Nhận ngày hệ thống. void getdate( struct date *d ); Kiểu cấu trúc date được định nghĩa trong dos.h như sau struct date { int da_year; /* Năm */ char da_mon; /* Tháng */ char da_day; /* Ngày */ }; Công dụng: Hàm nhận ngày hệ thống và đặt vào các thành phần của một biến cấu trúc kiểu date do con trỏ d trỏ tới. - setdate Thiết lập ngày hệ thống void setdate( struct date *d ); Công dụng: Hàm đặc lại ngày hệ thống theo gia trị cá thành phần của một biến cấu trúc kiểu date do con trỏ d trỏ tới. - time Nhận thời gian hệ thống quy ra giây long time( long *t ); Công dụng: Hàm cho thời gian hiện tại theo giây bắc đầu tính từ 0 giờ 0 phút 0 giây (giờ GMT) ngày 01-01-1970. 5
  • 6. Công dụng: Thay đổi kích thước của vùng nhớ đã cấp phát trước đó. Vùng nhớ mới có thể có địa chỉ khác so với vùng nhớ cũ. Phần dữ liệu trên vùng nhớ cũ được chuyển tới vùng nhớ mới và có thể tiếp tục sử dụng chúng. Khi thành công hàm trả về địa chỉ vùng nhớ mới, trái lại hàm trả về NULL. CÁC HÀM THỜI GIAN. Các hàm này khai báo trong time.h Các cấu trúc liên quan khai báo trong dos.h - gettime Nhận giờ hệ thống void gettime( struct time *t ); Kiểu cấu trúc time được định nghĩa trong dos.h như sau struct time { unsigned ti_hour; /* Giờ */ unsigned ti_min; /* Phút */ unsigned ti_sec; /* Giây*/ unsigned ti_hund; /* Miligiây */ }; Công dụng: Hàm nhận giờ hệ thống và đặc vào các thành phần của một biến cấu trúc kiểu time do con trỏ t trỏ tới - settime Thiết lập giờ hệ thống void settime( struct time *t ); Công dụng: Hàm đặc lại giờ hệ thống theo gia trị cá thành phần của một biến cấu trúc kiểu time do con trỏ t trỏ tới. - getdate Nhận ngày hệ thống. void getdate( struct date *d ); Kiểu cấu trúc date được định nghĩa trong dos.h như sau struct date { int da_year; /* Năm */ char da_mon; /* Tháng */ char da_day; /* Ngày */ }; Công dụng: Hàm nhận ngày hệ thống và đặt vào các thành phần của một biến cấu trúc kiểu date do con trỏ d trỏ tới. - setdate Thiết lập ngày hệ thống void setdate( struct date *d ); Công dụng: Hàm đặc lại ngày hệ thống theo gia trị cá thành phần của một biến cấu trúc kiểu date do con trỏ d trỏ tới. - time Nhận thời gian hệ thống quy ra giây long time( long *t ); Công dụng: Hàm cho thời gian hiện tại theo giây bắc đầu tính từ 0 giờ 0 phút 0 giây (giờ GMT) ngày 01-01-1970. 5