首页  > 教育解读  > printf如何输出二进制数

printf如何输出二进制数

2025-05-07 05:18:35
面试考官邢老师
面试考官邢老师已认证

面试考官邢老师为您分享以下优质知识

在C语言中,使用`printf`输出二进制数据主要有以下两种方法:

一、使用 `%b` 格式说明符(推荐)

C11标准新增了 `%b` 格式说明符,可直接以二进制形式输出整数。该格式支持附加宽度、填充符号等控制选项。

示例代码:

```c

include

int main() {

int num = 10;

printf("二进制表示: %bn", num); // 输出: 1010

printf("左对齐二进制: %-10bn", num); // 输出: 1010

printf("前导零填充二进制: %010bn", num); // 输出: 00001010

return 0;

}

```

二、手动转换并使用 `%s` 格式说明符

若需兼容旧版C标准或自定义输出格式,可将整数转换为二进制字符串后使用 `%s` 输出。

示例代码:

```c

include

include

include

void printBinary(unsigned int num) {

char binary; // 32位二进制数 + 结尾的'0'

int i;

for (i = 0; i < 32; i++) {

binary[i] = (num & (1