类型转化方法

 1、隐式转化

隐式转化规则:由低到高依次是 int--->long---->long long--->float--->double

                         若运算中有char short 则一并转化为int

#include <stdio.h>

int main()
{
    char a; short b; int c;
    long long d; float e; double f;

    printf("sizeof(a)=%d\n",sizeof(a));//a占1个字节长度
    printf("sizeof(b)=%d\n",sizeof(b));//b占2个字节长度
    printf("sizeof(c)=%d\n",sizeof(c));//c占4个字节长度

    printf("========================\n");

    printf("sizeof(a+b)=%d\n",sizeof(a+b));//a+b占4个字节长度
    printf("sizeof(a+c)=%d\n",sizeof(a+c));//a+c占4个字节长度
    printf("sizeof(b+c)=%d\n",sizeof(b+c));//b+c占4个字节长度

    printf("========================\n");

    printf("sizeof(d)=%d\n",sizeof(d));//long long型占8个字节长度
    printf("sizeof(a+d)=%d\n",sizeof(a+d));//char型和long long型一起运算,则提升到long long型,占8个字节长度

    printf("========================\n");

    c=3; e=5.6;
    printf("%f\n",c+e);//int型和float型一起运算,则提升到float型,占4个字节,小数点后保留6位数
    e=10.0;
    printf("%f\n",e/c);//int型和float型一起运算,则提升到float型,占4个字节,小数点后保留6位数

    printf("========================\n");

    printf("sizeof(a)=%d\n",sizeof(a));
    printf("sizeof(f)=%d\n",sizeof(f));//double型占8个字节

    printf("========================\n");

    printf("sizeof(d+e)=%d\n",sizeof(d+e));//long long型和float一起运算,则变成float型,占4个字节
    printf("sizeof(a+f)=%d\n",sizeof(a+f));//char型和double型一起运算,则提升到double型,占8个字节


    return 0;
}

打印结果:

2、强制转化

格式:( 类型)待转表达式

#include <stdio.h>

int main()
{
    int a=3; int b=10;
    float c=b/a;
    printf("%f\n",c);//结果是3.000000

    //若我们想得到3.333333的结果的时候

    float d=(float)b/a;//将b从int型转化到float型,则运算结果以float型的小数表示
    printf("%f\n",d);

    return 0;
}

打印结果:

 

3、浮点数跟0值比较

#include <stdio.h>

int main()
{
    double tmp=0.0;
    if(tmp>-0.000001 && tmp<+0.000001)//与-0.000001和+0.000001比较大小
    {
        printf("tep==0\n");
    }
    else
        printf("tep!=0\n");

    return 0;
}

打印结果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值