我有一份数字 list ,如下所示:

0, 16, 32, 48 ...

我需要以十六进制输出这些数字,如下所示:

0000,0010,0020,0030,0040.

我try 过以下解决方案:

printf("%.4x",a); // where a is an integer

但我得到的结果是:

0000,0001,0002,0003,0004.

我想我快到了.有人能帮上忙吗,因为我不是 所以C级的printf分很好.

谢谢你.

推荐答案

try :

printf("%04x",a);
  • 0-左键将数字填充为
  • 4(宽度)-最小安装数量
  • x-十六进制的说明符

here

C++相关问答推荐

如何启用ss(另一个调查套接字的实用程序)来查看Linux主机上加入的多播组IP地址?

在C中使用动态内存分配找到最小的负数

在#include中使用C宏变量

堆栈帧和值指针

为什么在4.9.37版的内核中,kfio还需要smp_wmb呢?

如何将长字符串转换为较小的缩写,该缩写由第一个字符、最后一个字符和中间的字符数组成?

如何在下面的C代码中正确管理内存?

GTK3按钮信号错误

C I/O:在Windows控制台上处理键盘输入

如何仅使用软件重新初始化STM32微控制器中的USB枚举?

这个空指针类型的转换是有效代码还是恶意代码?

将 struct 数组写入二进制文件时发生Valgrind错误

用C++高效解析HTTP请求的方法

按字典顺序打印具有给定字符的所有可能字符串

分支预测和UB(未定义的行为)

在C中交换字符串和数组的通用交换函数

C 程序不显示任何输出,但它接受 CS50 Lab1 的输入问题

是否可以在多字 C 类型中的任何位置混合存储和类型限定符?

为什么 C 字符串并不总是等同于字符数组?

C 中类型说明符的顺序重要吗?