printf函数
printf("占位1 占位2",替换1,替换2);
printf是一个变参函数。
printf的第一个参数是字符串。
printf 的第一个参数是需要输出的内容。
printf的第二及后续参数将依次替换占位符。
占位符的类型和数量需要与后续参数一一对应。
#include
int main()
{
int a = 1;
float b = 2.345;
char c = 'a';
printf("整型a为%d 浮点b为%f 字符c为%c 字符c的显示为%c", a, b, c, c);
return 0;
}
类型提升:
printf是一个可变参数函数。
将参数传入函数的可变参数中。
变量会发生自动类型提升。
当我们把有符号位的整型char,short传入printf的可变参数时,会被提升为int,而比int更高级的整型long,long long则不会变化。所以在处理char,short,int时,均可以使用%d来占位,long则是%ld,longlong 则是%lld。
上面都是有符号的整数,那么对于无符号的整数是什么情况呢?
unsigned char,unsigned short传入printf可变参数时,会被提升为unsigned int,而unsiged long和unsigned long long不发生变化。
对于无符号整型占位符,需要将%d变成%u.
我们称%d为占位符,这个说法不准确,更准确的说法是我们应该把他称为转换规范。
转换操作由单个字符表示



