printf
函數是C語言中用于格式化輸出的函數,它可以根據指定的格式字符串來打印不同類型的數據。以下是使用printf
打印不同數據類型的基本方法:
int
、long
、long long
等),你可以直接使用%d
、%ld
、%lld
等格式說明符。例如:int a = 10;
long b = 20L;
long long c = 30LL;
printf("a = %d, b = %ld, c = %lld\n", a, b, c);
float
、double
),你可以使用%f
、%lf
、%Lf
等格式說明符。例如:float x = 1.23f;
double y = 4.56;
long double z = 7.89L;
printf("x = %f, y = %lf, z = %Lf\n", x, y, z);
注意:%f
用于打印float
和double
類型的數據,%lf
僅用于打印double
類型的數據(在某些編譯器中,printf
的%f
也可以用于打印double
),而%Lf
僅用于打印long double
類型的數據。
char
),你可以使用%c
格式說明符。例如:char ch = 'A';
printf("ch = %c\n", ch);
char*
),你可以使用%s
格式說明符。例如:char* str = "Hello, World!";
printf("str = %s\n", str);
int*
、char*
等),你可以使用%p
格式說明符,并將其與(void*)
強制轉換結合使用,以打印指針的地址。例如:int a = 10;
int* ptr = &a;
printf("The address of a is: %p\n", (void*)ptr);
注意:在使用%p
格式說明符時,通常需要在格式字符串前面加上0x
前綴,以十六進制形式顯示地址。
%s
、%d
、%f
等通用格式說明符,或者根據自定義類型的定義,使用相應的格式說明符。例如:struct Person {
char name[50];
int age;
};
struct Person p = {"Alice", 30};
printf("Name: %s, Age: %d\n", p.name, p.age);
在這個例子中,我們使用了%s
和%d
格式說明符來分別打印結構體中的字符串和整數成員。