关于tc20与vc 的区别,小弟着有一小程序,请高手指教,为什么vc可以正确运行而tc20却不可以!多谢

关于tc20与vc 的区别,小弟着有一小程序,请高手指教,为什么vc可以正确运行而tc20却不可以!谢谢

将一个浮点数从内存中的表示输出到显示器上

C/C++ code

#include<stdio.h>
void main()
{
    float f;
    int *p;
    int i;

    printf("please input a float number:");
    scanf("%f",&f);
    
    [color=#FF0000]p=(int*)&f[/color];//强制类型转换,使指针指向内存,
                                                //tc中到底是什么地方不好使了呢 请高手指教
    
    for(i=31;i>=0;--i)
    printf( "%d",(*p>>i)&1); //一个一个输出

    printf( "\n ");
}



//也不知道为什么在tc20里面这个程序就不能正确运行。这是在vc下运行的

------解决方案--------------------
TC是16位编译器,int只有16位。用long试试