解释一下printf()格式中的长度修饰符L和H有什么作用。
发布网友
发布时间:2022-04-21 19:19
我来回答
共2个回答
热心网友
时间:2022-04-20 04:07
1、%L修饰符(注意大写的L):和浮点转换说明符一起使用,表示一个long double值。
示例:“%Lf”和“%10.4Le”
注:%l的修饰符(小写的l):和整数说明符一起使用,表示一个long int 或者unsigned long int 类型值。
示例:“%ld”和“%8lu”。
2、%h修饰符:和整数转换说明符一起使用,表示一个short int 或者 unsigned short int 类型数值。
示例:“%hu”、“%hx”和“%6.4hd”
热心网友
时间:2022-04-20 05:25
#include<stdio.h>
int main(){
int i=30000000;long i2=2000000000;
short int i3=30;
printf("%ld,%hd ",i2,i3);//如果是:%l,%h,则输不出结果 printf("%d,%ld ",i2,i3);//%ld和%d之间看不出差别,因为在VC32位编译器下long和int都是4bytes
printf("%hd,%hd",i2,i3);//%hd和%d之间有差别,因为short是2bytes int是4bytes
}追问void main()
{
short x= -0xa;
printf(%ho,%hx,%hu",x,x,x);
}
输出结果为什么是 177766 fff6 65526 什么原理?
追答-0xa = decimal -10 binary 1000000000001010(源码)
因为是负数所以补码存放
补码为 1 111 111 111 110 110
8进制(3位2进制代表一个8进制数) 177766
16进制(4位2进制代表一个16进制数) 为fff6
%ho 是短整型 8进制显示为 177766
%hx 是短整型 16进制显示 fff6
%hu 是短整型 无符号位十进制显示 补码直接转10进制 为 65526
来自:求助得到的回答
解释一下printf()格式中的长度修饰符L和H有什么作用。
1、%L修饰符(注意大写的L):和浮点转换说明符一起使用,表示一个long double值。示例:“%Lf”和“%10.4Le”注:%l的修饰符(小写的l):和整数说明符一起使用,表示一个long int 或者unsigned long int 类型值。示例:“%ld”和“%8lu”。2、%h修饰符:和整数转换说明符一起使用,表示一个...
printf%10是什么意思
5、l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。
求sprintf函数的详解,要附带例子,粘贴复制来的也可以,只要清晰内容好就...
printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要的字符串。格式化数字字符串sprintf 最常见的应用之一莫过于把整数打印到字符...
C语言中printf格式解释
与0是printf的标志之一,2是修饰符;:对c,s,d,u类无影响;对o类,在输出时加前缀0;对x类,在输出时加前缀0x或者0X;对g,G 类防止尾随0被删除;对于所有的浮点形式,#保证了即使不跟任何数字,也打印一个小数点字符。0 :对于所有的数字格式,用前导0填充字段宽度,若出现 - 标志或者指...
printf格式修饰符
printf函数的格式修饰符基本的是是%加字母,表示输出数据的类型,如%d表示整型,其中还可以在%和字母之间加上数字,表示输出数据的总长度,一般情况下是右对齐,左边有多余的位置用空格补齐,若是在%和数字字母之间加了负号,则表示左对齐。若是%f表示输出浮点型数据,如%-6.2f表示左对齐,总长度为6位...
C中使用h修饰符可以显示较大整数被截断成short类型值得情况 这是什么...
一个整数是32位,h表示high,就是高16位的部分。比如假如一个整数是8位(仅仅是举例)11110000,那么h就是高4位,1111,就是这个意思
c语言中的修饰符有什么用?
修饰符 格式说明、意义 M %md 以宽度m输出整型数,不足m时,左补空格 0m %0md 以宽度m输出整型数,不足m时,左补零 m,n %m.nf 以宽度m输出实型小数,小数位为n位 例如:设i = 123,a = 12.34567,则:printf("%4d +++ %5.2f",i,a);输出: 123 +++ 12.35 printf("%2d +...
printf中format函数的作用是?
在C语言中,`printf`函数是标准库函数,用于格式化输出到标准输出设备(通常是终端或屏幕)。`printf`函数的原型定义在`stdio.h`头文件中,其基本语法如下:其中,`format`是一个格式化字符串,它的作用是指示`printf`函数如何处理和输出随后的可变参数。format函数的具体作用包括:1. **指定输出格式**...
printf("please input data:\n");是什么意思
printf("please input data:\n"); printf是C函数库中的一个输出函数。 括号内双引号里的 原样输出 即输出 please input data: (中文翻译过来就是 请输入一个数据:) \n 是转义字符 表示的意思是 换行后面的分号 表示一个语句的结束。
为何scanf函数只能输入一个值呢
附加格式说明字符表修饰符 说明L/l 长度修饰符 输入"长"数据h 长度修饰符 输入"短"数据W 整型常数 指定输入数据所占宽度* 星号 空读一个数据 hh,ll同上h,l但仅对C99有效。(B) 空白字符空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符,空白符可以是space,tab,newline等等,直到第一个...