请问在 c语言中 1LL的意义

Python018

请问在 c语言中 1LL的意义,第1张

C语言中的printf、scanf、 sprintf、sscanf等函数中需要用格式字符串来控制数据的输出格式。

比如: printf("%lx", 65535)/* 将65535输出为十六进制格式 */

输入参数"%lx"就是格式控制串,其中的%是格式控制符, l表示数据为长整型,x表示输出十六进制

执行该函数输出的内容为: ffff

更详细的格式控制符说明如下:

语法: %[-][width][.prec]type

其中中括号中的内容是可选项,每项的含义分别如下:

-: 表示输出时按左对齐的格式,否则为右对齐。

width:输出的总宽度(包括后面的prec),如果给的宽度不够,则会自动增加宽度,而不会截断。

prec: 用于控制浮点数的输出小数位数

type: 类型控制符,具体如下:

d或i: 有符号整数

u: 无符号整数

x: 用十六进制表示整数

o: 用八进制表示整数

f: 浮点数

g: 用科学计数法表示浮点数

s: 字符串

c: 字符

其中 d、i、u、x、f、g前面可以加上字母l或ll表示long或者long long,

比如 "%ld"可以输出32位整数,"%lld"可以输出64位整数。

以上内容仅供参考,因为不同的编译器可能会根据需要定义自己的控制符。

因为定义了unsigned long long型的定义,所以输入输出都需要%llu的格式修饰

比如定义unsigned long int,就要用%lu了

unsigned int用%u

long long int用%lld

long int用%ld

int用%d

这个是一一对应的,用不对就会产生输入、输出方面的错误。

那我问你LL为什么要有逗号?

你知不知道LL是什么?

它是一个长度修饰符.

表示它前面跟的数字是长长整型. 因为如果你写的数字大于了整型的长度, 这样就会报错, 加上就不会.