为了账号安全,请及时绑定邮箱和手机立即绑定

为什么两种都对

 printf("num的整数部分是%d\n",numq);这一行nump前面为什么加不加(int)都对

正在回答

4 回答

不加是因为你已经强制类型转换了。

加了相当于又做了一次强制类型转换,当然对了。

0 回复 有任何疑惑可以回复我~

为啥强制转换是:int numq=(int)numq而不是:int num=(int)num

1 回复 有任何疑惑可以回复我~
#1

蒙上灰的梦想

多一个变量而已,都行
2021-04-06 回复 有任何疑惑可以回复我~
#2

蒙上灰的梦想

num已经定义过了
2021-04-06 回复 有任何疑惑可以回复我~

第一种是

#include <stdio.h>

int main()

{

    double num = 2.5;      //定义浮点型变量num并赋值为2.5

    int numq = (int)num;

    printf("num的整数部分是%d\n",numq); 

    return 0;

}

第二种是

#include <stdio.h>

int main()

{

    double num = 2.5;      //定义浮点型变量num并赋值为2.5

    int numq = (int)num;

    printf("num的整数部分是%d\n",(int)numq); 

    return 0;

}


1 回复 有任何疑惑可以回复我~

能看下完整的代码吗


0 回复 有任何疑惑可以回复我~
#1

番茄小土豆0 提问者

我发在下面了
2021-03-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么两种都对

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信