Format Specifiers trong C là gì?

Format Specifiers Trong C La Gi



Trong lập trình C, định dạng specifiers đóng vai trò quan trọng trong việc quản lý dữ liệu. Chúng xác định định dạng và kích thước của dữ liệu sẽ được xuất hoặc đọc từ thiết bị đầu vào/đầu ra. Hiểu định dạng tùy chỉnh là một chủ đề quan trọng trong Lập trình C vì nó được sử dụng rộng rãi làm đầu ra của các hàm.

Trong bài viết này, chúng tôi sẽ đề cập đến các khái niệm cơ bản, cú pháp và các ví dụ sử dụng của định dạng specifiers trong C lập trình .

Công cụ định dạng trong C

Các định dạng specifiers được sử dụng để chỉ định định dạng của chuỗi đầu ra, sau đó được in trên bàn điều khiển bằng cách sử dụng printf() chức năng và chúng cũng có thể được sử dụng trong scanf() chức năng lấy đầu vào từ người dùng. chúng tôi sử dụng % biểu tượng với mọi định dạng định dạng. Ngôn ngữ C cung cấp các định dạng specifiers cho từng kiểu dữ liệu. một số định dạng specifiers bạn có thể sử dụng trong các chương trình C của mình được đề cập trong bảng dưới đây:







Loại dữ liệu Công cụ xác định định dạng
số nguyên số nguyên đã hát %d
số nguyên không dấu %Tôi
Số nguyên ngắn đã ký %CHÀO
Số nguyên ngắn không dấu %hu
gấp đôi gấp đôi %lf
đôi dài %Lf
tính cách %c
dài dài %TÔI
không dấu dài %lu
Không dấu lâu dài %llu
dài dài %lli hoặc %lld
sợi dây %S
Không in gì %N
Điểm nổi của ký hiệu khoa học %e hoặc %E
In con trỏ %P
%O đại diện bát giác
%x Biểu diễn thập phân hexa

Thông qua các chỉ định định dạng được đề cập ở trên trong hàm printf() , bạn có thể truy xuất dữ liệu được lưu trữ trong đó.



Dưới đây là một số ví dụ đơn giản sử dụng định dạng specifiers cho các kiểu dữ liệu khác nhau trong C:



1: Số nguyên

#include

int chủ yếu ( ) {

int trên một = 10 ;

bản inf ( 'Số nguyên đã ký: %d \N ' , trên một ) ;

bản inf ( 'Số nguyên không dấu: %u \N ' , trên một ) ;

bản inf ( 'Số nguyên ngắn đã ký: %hi \N ' , ( ngắn ) trên một ) ;

bản inf ( 'Số nguyên ngắn chưa ký: %hu \N ' , ( chưa ký ngắn ) trên một ) ;

trở lại 0 ;

}





2: Nhân đôi

#include

int chủ yếu ( ) {

gấp đôi trên một = 10,5 ;

bản inf ( 'Gấp đôi: %lf \N ' , trên một ) ;

bản inf ( 'Nhân đôi dài: %Lf \N ' , ( dài gấp đôi ) trên một ) ;

trở lại 0 ;

}

3: Nhân vật

#include

int chủ yếu ( ) {

than ch = 'Một' ;

bản inf ( 'Nhân vật: %c \N ' , ch ) ;

trở lại 0 ;

}



4: dài

#include

int chủ yếu ( ) {

dài trên một = 100000 ;

bản inf ( 'Dài: %ld \N ' , trên một ) ;

bản inf ( 'Dài chưa ký: %lu \N ' , ( chưa ký dài ) trên một ) ;

bản inf ( 'Dài Lâu: %lld \N ' , ( dài dài ) trên một ) ;

bản inf ( 'Long Long chưa được ký: %llu \N ' , ( chưa ký dài dài ) trên một ) ;

trở lại 0 ;

}

5: Chuỗi

#include

int chủ yếu ( ) {

than str [ ] = 'Chào thế giới!' ;

bản inf ( 'Dây \N ' , str ) ;

trở lại 0 ;

}

6: Khác

#include

int chủ yếu ( ) {

gấp đôi trên một = 123,45 ;

bản inf ( 'Dấu chấm động của ký hiệu khoa học: %e \N ' , trên một ) ;

bản inf ( 'In con trỏ: %p \N ' , & trên một ) ;

bản inf ( 'Biểu diễn hình bát giác: %o \N ' , mười lăm ) ;

bản inf ( 'Biểu diễn thập phân hexa: %x \N ' , mười lăm ) ;

bản inf ( 'In ký tự %%: %% \N ' ) ;

trở lại 0 ;

}

Định dạng bằng công cụ định dạng

Một số công cụ trong C có thể được sử dụng để định dạng đầu ra, chúng thường được chèn vào giữa % dấu hiệu và ký hiệu xác định định dạng. Chúng tôi đã đề cập đến một số công cụ định dạng dưới đây:

  • Các Giai đoạn (.) dấu hiệu phân tách độ rộng trường với độ chính xác.
  • Các dấu trừ (-) biển báo căn lề trái.
  • Các con số sau % dấu hiệu chỉ định chiều rộng trường tối thiểu sẽ được in.

Ví dụ

Trong mã ví dụ dưới đây, chúng tôi đã sử dụng các công cụ định dạng với các chỉ định định dạng:

#include

int chủ yếu ( )

{

than str [ ] = 'Linux' ;

bản inf ( '%30s \N ' , str ) ;

bản inf ( '%-30 giây \N ' , str ) ;

bản inf ( '%10,5s \N ' , str ) ;

bản inf ( '%-20,5 giây \N ' , str ) ;

trở lại 0 ;

}

Trong đoạn mã trên %30s chỉ định rằng chuỗi sẽ được in trong một trường có chiều rộng tối thiểu là 30 ký tự. %-30 giây cho biết in chuỗi trong trường có tối thiểu 30 ký tự nhưng nó phải được căn trái. Điều tương tự cũng xảy ra đối với 10,5 đô la %-20,5s.

dòng dưới cùng

Các định dạng specifiers được sử dụng trong việc định dạng các chức năng đầu vào và đầu ra bao gồm printf() chức năng. Các định dạng specifiers xác định định dạng của chuỗi đầu ra và chúng được sử dụng với % tính cách. Khi giá trị được lưu trữ trong biến, bạn không thể hiển thị trực tiếp đầu ra trên bảng điều khiển mà không sử dụng các công cụ xác định định dạng. Chúng tôi đã thảo luận về các loại khác nhau của định dạng specifiers với mã ví dụ trong phần trên của hướng dẫn.