printf 转换字符以及类型是什么?
printf 用来打印无空白字段待填充的字符串。
例如,
printf ("An ordinary string.."); printf ("Testing 1,2,3...");
如上,已使用过的下一个最简单的案例是打印出单个整数。
int number = 48; printf ("%d",number);
两者的组合如下所示 −
int number = 48; printf ("Some number = %d",number);
此最后示例的结果是打印出以下内容 −
Some number = 48
下面是 printf 的不同字母列表 −
- d − 有符号十进制整数
- u − 无符号十进制整数
- x − 十六进制整数
- o − 八进制整数
- s − 字符串
- c − 单个字符
- f − 固定小数浮点数
- e − 科学记数法浮点数
- g − 采用较短的 f 或 e
示例
以下是 C 程序的示例,演示printf 转换字符和类型的使用 −
/* printf Conversion Characters and Types */ #include <stdio.h> main (){ int i = -10; unsigned int ui = 10; float x = 3.56; double y = 3.52; char ch = ’z’; char *string_ptr = "any old string"; printf ("signed integer %d
", i); printf ("unsigned integer %u
",ui); printf ("This is wrong! %u",i); printf ("See what happens when you get the "); printf ("character wrong!"); printf ("Hexadecimal %x %x
",i,ui); printf ("Octal %o %o
",i,ui); printf ("Float and double %f %f
",x,y); printf (" ditto %e %e
",x,y); printf (" ditto %g %g
",x,y); printf ("single character %c
",ch); printf ("whole string -> %s",string_ptr); }
输出
执行以上程序后,会生成以下结果 −
signed integer -10 unsigned integer 10 This is wrong! 4294967286See what happens when you get the character wrong!Hexadecimal fffffff6 a Octal 37777777766 12 Float and double 3.560000 3.520000 ditto 3.560000e+000 3.520000e+000 ditto 3.56 3.52 single character z whole string -> any old string
广告