“%lld \ n”是什么意思?

时间:2019-09-15 05:09:07

标签: c

您能给我解释一下这些行吗?

printf("%lld\n", (long long) time(NULL));

printf("%.2x", (unsigned char)key[i]);

3 个答案:

答案 0 :(得分:1)

%lld的意思是“打印long long int变量”。

%.2x的意思是“打印两个十六进制数字”。

但是,请注意,这两行代码是未定义的行为,因为您没有提供与格式说明符相对应的参数。

答案 1 :(得分:0)

%lld表示长双字 %.2x将从您选择的变量中打印点和2个十六进制数字(如果小于10,它将填充0)

答案 2 :(得分:0)

谢谢您的回答。

我发现此表(https://www.cs.uic.edu/~jbell/CourseNotes/C_Programming/DataTypesSummary.pdf)有用

对于那些来自Java背景的人来说,我理解这是在打印变量之前进行某种类型的转换(格式)。它还需要指定变量类型(无符号字符)。

printf(“”%。2x“,(unsigned char)键[i])-----> printf =(JAVA)简单打印输出(sout)

注意:如果需要保存新变量,可以使用snprintf

snprintf(str [i],128,“%.2x”,key [i]); -----> snprintf =(JAVA)str是一个新数组,其中key [i]以“%.2x”格式保存