微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c语言中不同进制数的表示

1、

c语言中,计算机以不同的前缀表示计算机采用哪种进制的数显示数值。

0表示8进制数的前缀。

0x和0X都表示16进制数的前缀。

比如十进制数16使用8进制数表示是020。(2乘以8的1次方)。

十进制数16使用16进制数表示是0x10。(1乘以16的1次方)。

 

在程序中,8进制数的转换说明是%#o, 16进制数的转换说明是%#x或者%#X。

测试程序如下:

#include <stdio.h>

int main(void)
{
    int num = 16;
    
    printf("decimal: %d.\n", num);
    printf("octal: %#o.\n", num);
    printf("hexa: %#x.\n", num);
    printf("hexa: %#X.\n", num);
    
    return 0;
}

 

2、在显示8进制和16进制数的时候,也可以不加进制说明的前缀, 比如省略8进制的前缀0,16进制的前置0x;

#include <stdio.h>

int main(void)
{
    int x = 100;
    
    printf("dec = %d; octal = %o; hex = %x;\n", x, x, x);  //no prefix 
    printf("dec = %d; octal = %#o; hex = %#x\n", x, x, x);
    
    return 0;
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐