跳到主要内容
🔍

代码示例:0.1.2 进制与进制转换

全部示例均标注编译命令、适用环境与实测状态;完整验证记录见《03.5-代码编译运行验证记录》。

  • examples/ex1-printf-bases.c · printf 输出四种进制(验证手工换算)

    /* ex1-printf-bases.c —— printf 输出四种进制(0.1.2 演示)
     * 适用环境:Linux / Windows(MinGW) 标准:C99+
     * 编译:gcc ex1-printf-bases.c -o ex1 -std=c11 -Wall -Wextra -Wpedantic
     * 运行:./ex1(Windows: ex1.exe)
     * 说明:本代码用于验证手工换算结果;需先完成 0.2 环境搭建(本章学习时环境尚未安装,可先手算、后回看运行)
     */
    #include <stdio.h>
     
    int main(void)
    {
        int value = 2026;
     
        printf("十进制: %d\n", value);
        printf("八进制: %o\n", value);          /* %o 八进制 */
        printf("十六进制(小写): %x\n", value);  /* %x 十六进制小写 */
        printf("十六进制(大写): %X\n", value);  /* %X 十六进制大写 */
     
        /* 前缀格式:0x/0X 手动补,%#x 自动补 */
        printf("带前缀: %#x\n", value);
     
        /* 手算验证:2026 = 0b11111101010 = 0x7EA(见本章正文) */
        printf("验证: 2026 & 0xFF = %d (0x%02X)\n", value & 0xFF, value & 0xFF);
        return 0;
    }