含义
将变量的内容输出到显示器上
printf(字符串)
#include<stdio.h>
int main(void){
printf("hello world");
return 0;
}
printf(“输出控制符”,输出参数)
#include<stdio.h>
int main(void){
int i=10;
printf("%d",i);
return 0;
}
把10存进变量i中,实际上是以二进制代码存储的
- %d表示将变量i中的内容以十进制的形式输出
- %x表示将变量中的内容以十六进制的形式输出
#include<stdio.h>
int main(void){
int i=10;
printf("%d\n",i);//10
printf("%x\n",i);//a
return 0;
}
其他的以此类推:
在C语言和许多其他编程语言中,用于格式化输出的占位符可以帮助我们将变量的值以特定的格式显示。除了十进制和十六进制,还有一些其他的格式说明符。以下是一些常用的格式说明符及其含义:
%d
:以十进制形式输出整数。%x
或%X
:以十六进制形式输出整数,其中%X
会使用大写的字母。%o
:以八进制形式输出整数。%f
:以小数形式输出浮点数。%e
或%E
:以科学计数法的形式输出浮点数,其中%E
会使用大写的字母。%c
:输出单个字符。%s
:输出字符串。%%
:输出一个百分号。
例如,如果你想以八进制的形式输出变量i的值,你可以使用printf("%o", i);
。如果你想以科学计数法的形式输出变量j的值,你可以使用printf("%e", j);
。
printf(“输出控制符1 输出控制符2……”,输出参数1,输出参数2……)
#include<stdio.h>
int main(void){
int a=12;
char ch='a';
printf("%d %c",a,ch);//12 a
return 0;
}
输出控制符和输出参数的个数必须是一一对应的
主要常用的输出控制符讲解
在C语言中,格式化输出控制符用于控制输出的格式。以下是这些控制符的示例代码和解释:
%d
:用于输出十进制整数。
#include <stdio.h>
int main() {
int num = 123;
printf("%d\n", num); // 输出: 123
return 0;
}
%ld
:用于输出长整型(long int)数。
#include <stdio.h>
int main() {
long num = 1234567890;
printf("%ld\n", num); // 输出: 1234567890
return 0;
}
%c
:用于输出字符。
#include <stdio.h>
int main() {
char ch = 'A';
printf("%c\n", ch); // 输出: A
return 0;
}
%f
:用于输出浮点数。
#include <stdio.h>
int main() {
float num = 3.14159;
printf("%f\n", num); // 输出: 3.141590
return 0;
}
%lf
:用于输出双精度浮点数(double)。
#include <stdio.h>
int main() {
double num = 2.71828;
printf("%lf\n", num); // 输出: 2.718280
return 0;
}
%x
和%X
:用于输出十六进制整数。其中,%x
以小写字母输出,而%X
以大写字母输出。
#include <stdio.h>
int main() {
int num = 255;
printf("%x\n", num); // 输出: ff (小写的十六进制表示)
printf("%X\n", num); // 输出: FF (大写的十六进制表示)
return 0;
}
%x%X%#x%#X的用法区别功能
当然可以。以下是使用%x
, %X
, %#x
, 和 %#X
的代码示例:
#include <stdio.h>
int main() {
int num = 255;
printf("使用 %x: %x\n", num, num); // 输出: 使用 ff: ff (小写的十六进制表示)
printf("使用 %X: %X\n", num, num); // 输出: 使用 FF: FF (大写的十六进制表示)
printf("使用 %#x: %#x\n", num, num); // 输出: 使用 0xff: 0xff (带有前缀的十六进制表示)
printf("使用 %#X: %#X\n", num, num); // 输出: 使用 0xFF: 0xFF (带有前缀的大写的十六进制表示)
return 0;
}
解释:
%x
和%X
:这两个控制符用于输出十六进制数。%x
默认输出小写字母,而%X
默认输出大写字母。%#x
和%#X
:这两个控制符与上面的类似,但它们在输出时会加上前缀0x
或0X
。这在你想要输出一个十六进制数并确保它有一个明确的前缀时很有用。