问答详情
源自:2-9 强制类型转换

搞不懂,与本题无关的问题

{

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

    int abc = (int)num;

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

    return 0;

}

中,当我给abc那个东西取名不同的名字时(xxxyyy,shflkjfh,num2之类)再输入

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

为何num答案就不一样了

比如: int  abc = (int)num;

            printf("是%d\n", num);    答案                 是4195839

提问者:怎么什么昵称都被注册了 2015-06-18 19:51

个回答

  • 康振宁
    2015-06-19 09:59:11

    因为你定义的num是个double类型的,而你输出的时候用的%d,整型输出,所以会这样