Hàm printf() trong Thư viện C chuẩn gửi output đã được định dạng tới một stdout.
Khai báo hàm printf() trong C
Dưới đây là phần khai báo cho hàm printf() trong tiếng nói lập trình C:
int printf(const char *format, ...)
Tham số hàm printf() trong C
format: Đây là chuỗi chứa text được ghi tới stdout. Nó sở hữu thể chứa những thẻ định dạng sở hữu thể được nhúng mà được thay thế bởi những giá trị được xác định trong những tham số bổ sung tiếp theo và được định dạng theo yêu cầu. Nguyên mẫu những thẻ định dạng là %[flags][width][.precision][length]specifier, được giải thích như dưới đây:
specifier | Kết quả |
---|---|
c | Ký tự |
d hoặc i | Số nguyên hệ thập phân sở hữu dấu |
e | Ký hiệu khoa học (mantissa/exponent) sử dụng ký tự e |
E | Ký hiệu khoa học (mantissa/exponent) sử dụng ký tự E |
f | Số thực dấu chấm động hệ thập phân |
g | Sử dụng rút gọn của %e hoặc %f |
G | Sử dụng rút gọn của %E hoặc %f |
o | Số bát phân sở hữu dấu |
s | Chuỗi ký tự |
u | Số nguyên hệ thập phân ko dấu |
x | Số nguyên hệ thập lục phân ko dấu |
X | Số nguyên hệ thập lục phân ko dấu (những chữ dòng hoa) |
p | Địa chỉ con trỏ |
n | Không in dòng gì |
% | Ký tự |
flags | Mô tả |
---|---|
– | Căn chỉnh trái vào bên trong độ rộng trường đã cho. Căn chỉnh phải là mặc định |
+ | Ép buộc đặt trước kết quả một dấu cùng hoặc trừ (+ hoặc -) ngay cả với những số dương. Theo mặc định, chỉ sở hữu những số âm được đặt trước bởi một dấu – |
(space) | Nếu ko sở hữu ký hiệu nào được ghi, thì một khoảng trống sẽ được chèn trước giá trị |
# | Được sử dụng với những specifier là o, x hoặc X. Giá trị được đặt trước với 0, 0x hoặc 0X tương ứng cho những giá trị khác 0. Sử dụng với e, E và f, nó ép buộc output đã được ghi để thu nhận một con trỏ thập phân ngay cả nếu ko sở hữu chữ số nào theo sau. Theo mặc định, nếu ko sở hữu chữ số nào theo sau thì ko sở hữu con trỏ thập phân được ghi. Sử dụng với g hoặc G, kết quả là giống với e hoặc E nhưng những số 0 ở cuối ko bị gỡ bỏ |
0 | Đệm vào bên trái (left-pad) của số với những số 0 thay vì bởi những khoảng trống |
width | Mô tả |
---|---|
(number) | Số ký tự tối thiểu để được in. Nếu giá trị để được in là ngắn hơn số này, thì kết quả được đệm thêm với những khoảng trống. Giá trị ko bị cắt ngay cả lúc kết quả là quá lớn |
* | Độ rộng ko được xác định trong chuỗi định dạng format, nhưng như một tham số giá trị nguyên bổ sung đặt trước tham số đó mà phải được định dạng |
.precision | Mô tả |
---|---|
.number | Với những Integer Specifier (d, i, o, u, x, X) − thì Precision xác định số chữ số nhỏ nhất được ghi. Nếu giá trị được ghi là ngắn hơn số này thì kết quả được đệm thêm với những 0 vào đầu. Giá trị ko bị cắt ngay cả nếu kết quả là dài hơn. Một precision là 0 nghĩa là ko sở hữu ký tự nào được ghi cho giá trị 0. Với e, E và f specifier: đây là số chữ số để được in sau điểm thập phân. Với g và G specifier: đây là số chữ số sở hữu nghĩa tối đa để được in. Với s specifier: đây là số ký tự tối thiểu để được in. Theo mặc định, tất cả ký tự được in tới lúc bắt gặp ký tự null cuối cùng. Với kiểu c: nó ko sở hữu ảnh hưởng. Khi ko sở hữu precision nào được xác định, thì mặc định là 1. Nếu period được xác định mà ko kèm với một giá trị precision rõ ràng, thì 0 được giả sử |
.* | Precision ko được xác định trong chuỗi định dạng format, nhưng như một tham số giá trị nguyên bổ sung đặt trước tham số đó mà phải được định dạng |
length | Mô tả |
---|---|
h | Tham số được thông dịch như một short int hoặc unsigned short int (chỉ được áp dụng cho integer specifiers: i, d, o, u, x và X) |
l | Tham số được thông dịch như một long int hoặc unsigned long int cho integer specifier (i, d, o, u, x và X), và như một wide char hoặc wide char string cho những specifier là c và s |
L | Tham số được thông dịch như một long double (chỉ được áp dụng cho những floating point specifier: e, E, f, g và G) |
Các tham số bổ sung − Phụ thuộc vào chuỗi định dạng format, hàm này sở hữu thể sở hữu một dãy tham số bổ sung, mỗi tham số chứa một giá trị để được chèn thay cho mỗi %-tag được xác định trong tham số format, nếu sở hữu. Số tham số này nên cùng số lượng với số %-tags mà mong chờ một giá trị.
Trả về giá trị:
Nếu thành công, tổng số ký tự đã được ghi sẽ được trả về. Nếu thất bại thì trả về một số âm.
Ví dụ:
Chương trình C sau minh họa nhữngh sử dụng của hàm printf() trong C:
#include <stdio.h>
int main ()
{
int ch;
for( ch = 75 ; ch <= 100; ch++ )
{
printf("Gia tri ASCII = %d, Ky tu = %cn", ch , ch );
}
return(0);
}
Biên dịch và chạy chương trình C trên sẽ cho kết quả:
Gia tri ASCII = 75, Ky tu = K
Gia tri ASCII = 76, Ky tu = L
Gia tri ASCII = 77, Ky tu = M
Gia tri ASCII = 78, Ky tu = N
Gia tri ASCII = 79, Ky tu = O
Gia tri ASCII = 80, Ky tu = P
Gia tri ASCII = 81, Ky tu = Q
Gia tri ASCII = 82, Ky tu = R
Gia tri ASCII = 83, Ky tu = S
Gia tri ASCII = 84, Ky tu = T
Gia tri ASCII = 85, Ky tu = U
Gia tri ASCII = 86, Ky tu = V
Gia tri ASCII = 87, Ky tu = W
Gia tri ASCII = 88, Ky tu = X
Gia tri ASCII = 89, Ky tu = Y
Gia tri ASCII = 90, Ky tu = Z
Gia tri ASCII = 91, Ky tu = [
Gia tri ASCII = 92, Ky tu =
Gia tri ASCII = 93, Ky tu = ]
Gia tri ASCII = 94, Ky tu = ^
Gia tri ASCII = 95, Ky tu = _
Gia tri ASCII = 96, Ky tu = `
Gia tri ASCII = 97, Ky tu = a
Gia tri ASCII = 98, Ky tu = b
Gia tri ASCII = 99, Ky tu = c
Gia tri ASCII = 100, Ky tu = d
Các bạn đang xem tin tức tại Tin hay 24h – Chúc những bạn một ngày vui vẻ
Từ khóa: Hàm printf() trong C – Quantrimang.com