float d=0;
wsprintf(szbuffer,TEXT("%f"),d);//格式转换
SetWindowText(hwndSY[1],szbuffer);//用于设定静态类的标题
但是输出结果老是 f 
 wsprintf函数的第二个参数只能输出整数形式的?

解决方案 »

  1.   


    float d=0;
    TCHAR szbuffer[MAX_PATH] = { 0 };
    wsprintf(szbuffer,TEXT("%f"),d);
    SetWindowText(hwndSY[1],szbuffer);
    应该没问题的。
      

  2.   

    我查了 wsprintf 函数的说明,%f 的确有问题,因为这个 f 根本就没有;这个跟 sprintf 函数是有区别的。
      

  3.   

    最简单的用 CString 就可以了,如:
    float f = 0;
    CString str;str.Format(_T("%f"),f);
    SetWindowText(xxx , str );
      

  4.   

    你可以多贴几行代码,可以帮你研究一下这个 wsprintf 函数到底怎么回事。
      

  5.   

    wsprintf 函数 的确 不支持 %f 这个标识,我也是第一次发现。
      

  6.   

    不好意思,刚才试了下wsprintf确实不支持%f,用_stprintf是可以的。
    TCHAR szbuffer[MAX_PATH]={0};
    _stprintf(szbuffer,TEXT("%f"),d);
    SetWindowText(hwndSY[1],szbuffer);
      

  7.   

    我创建的是Win32 console application 
    想把两个整数 int a,b;//当然a,b在后面都是有具体的值的;
    的商求出来后,再以文本的形式设置为静态类的标题。。
    具体代码是这样的:
    int a=5;b=6;
    float d=0;
    d=(float)/(b/a);
    TCHAR szbuffer[10]={"0"};
    wsprintf(szbuffer,TEXT("%f"),d);//格式转换 
    SetWindowText(hwndSY[1],szbuffer);//用于设定静态类的标题 ,hwndSY[1]是静态类代号,
    但是输出结果老是 f 
    wsprintf函数的第二个参数只能输出整数形式的?
    若用_stprintf(szbuffer,TEXT("%f"),d);
    编译错误 :error C2065: 'sprintf' : undeclared identifier//前面有头文件  "TCHAR.H"MFC类库编程我还不会!!!!!
      

  8.   

    VC什么版本?include stdio.h文件试试
    #include <stdio.h>
    #include <TCHAR.h>