C语言的常用printf打印占位符%d, %f, %s, %o, %x

占位符含义及用法

代码:

#include <stdio.h>

int main(int argc, char const *argv[])
{
    int a = 12, b = 20; // 默认10进制赋值
    char *str = "jack";
    // %d 为整数占位符,10进制表示
    printf("a + b = %d\n", a + b);
    // %o 为整数占位符,8进制表示
    printf("a = %d, 8进制为 %o\n", a, a);
    // %x 为整数占位符, 16进制表示
    printf("a = %d, 16进制为 %x\n", a, a);
    float c = 12.5, d = 3.14;
    // %f 为浮点数占位符,10进制表示,此处如果再使用%d会发生溢出,打印无效数据
    printf("c + d = %f\n", c + d);\
    // %s 为字符串占位符
    printf("Hello, %s\n", str);

    int e = 0123; // 0开头,8进制赋值
    int f = 0x1ab; // 0x开头,16进制赋值
    printf("e = [10]%d, [8]%o, [16]%x\n", e, e, e);
    printf("f = [10]%d, [8]%o, [16]%x\n", f, f, f);

    return 0;
}

结果

a + b = 32
a = 12, 8进制为 14
a = 12, 16进制为 c
c + d = 15.640000
Hello, jack
e = [10]83, [8]123, [16]53
f = [10]427, [8]653, [16]1ab

猜你喜欢

转载自www.cnblogs.com/jixiaohua/p/11070772.html