下面的代码打印ffffffffff
。sprintf在C中导致零填充
我需要的输出是16位数字长000000ffffffffff
与前导零。 var1
和var2
变量可以不同,所以没有必要仅填充6个零。我只需要输出为具有前导零的16位数字。我应该如何继续?
#include <stdio.h>
int main() {
int var1 = 1048575;
int var2 = 1048575;
char buffer[100];
sprintf(buffer, "%x%x", var1, var2);
printf("%s\n", buffer);
return 0;
}
C++不是C不是C++! – Olaf
'%016X'应该可以工作... –