gpt4 book ai didi

visual-c++ - 如何将 float 打印到 Visual C++ 消息框?

转载 作者:行者123 更新时间:2023-12-04 04:29:14 25 4
gpt4 key购买 nike

我有一个 float 。我想把它打印在一个消息框里。怎么做?

MessageBox(hWnd, "Result = <float>", L"Error", MB_OK);

更新:

我这样做,它会在消息框中打印出中文字符。

 float fp = 2.3333f;
sprintf(buffer,"%f",fp);
MessageBox(hWnd, LPCWSTR(buffer), L"Error", MB_OK);

最佳答案

因为您正在使用 wchar_t您应该使用的 Win32 函数版本 swprintf而不是 sprintf :

float fp = 2.3333f;
const size_t len = 256;
wchar_t buffer[len] = {};
swprintf(buffer, L"%f", fp);
MessageBox(hWnd, buffer, L"Error", MB_OK);

为避免潜在的缓冲区溢出,您还可以使用 _snwprintf :

float fp = 2.3333f;
const size_t len = 256;
wchar_t buffer[len] = {};
_snwprintf(buffer, len - 1, L"%f", fp);
MessageBox(hWnd, buffer, L"Error", MB_OK);

或者更好的是,使用 std::wostringstream<sstream> 中声明:

float fp = 2.3333f;
std::wostringstream ss;
ss << fp;
MessageBox(hWnd, ss.str().c_str(), L"Error", MB_OK);

关于visual-c++ - 如何将 float 打印到 Visual C++ 消息框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2826097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com