C++ “如何转换类型”;int";输入“;LPCSTR";在Win32 C++;

C++ “如何转换类型”;int";输入“;LPCSTR";在Win32 C++;,c++,winapi,messagebox,C++,Winapi,Messagebox,您好,朋友们,我如何将“int”类型转换为“LPCSTR”类型?我想将变量“int cxClient”赋给“MessageBox”函数的第二个参数“LPCSTR lpText”。以下是示例代码: int cxClient; cxClient = LOWORD (lParam); MessageBox(hwnd, cxClient, "Testing", MB_OK); 但它不起作用。以下函数是“MessageBox”函数的方法签名: MessageBox(HWND hWnd,

您好,朋友们,我如何将“int”类型转换为“LPCSTR”类型?我想将变量“int cxClient”赋给“MessageBox”函数的第二个参数“LPCSTR lpText”。以下是示例代码:

int cxClient;    
cxClient = LOWORD (lParam);    
MessageBox(hwnd, cxClient, "Testing", MB_OK);
但它不起作用。以下函数是“MessageBox”函数的方法签名:

MessageBox(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType);

使用右sprintf变量将int转换为字符串

TCHAR buf[100];
_stprintf(buf, _T("%d"), cxClient);
MessageBox(hwnd, buf, "Testing", MB_OK);
您需要

我认为代码>戴维是一个快速的答案——但是如果你想像C++一样建议纯C++,那么< /P>

#ifdef _UNICODE
wostringstream oss;
#else
ostringstream oss;
#endif

oss<<cxClient;

MessageBox(0, oss.str().c_str(), "Testing", MB_OK);
\ifdef\u UNICODE
wostringstream-oss;
#否则
ostringstream oss;
#恩迪夫
开放源码软件

既然问题是C++的标记,那么C++的答案可能是better@DavidHeffernan-还添加了一个ostringstream。哇!我得到了它。现在“MessageBox”函数可以显示我想要的变量:D。以下是我的工作代码:#包括使用名称空间std#ifdef_UNICODE-wostringstream-oss#其他ostringstream oss#恩迪夫oss@Bhaddiya您也可以使用
typedef std::basic\u ostringstream to stringstream
,而不是条件代码。或者将
wostringstream
与UNICODE变体
MessageBoxW
一起使用。注意
std::to_string
需要C++11
#include <sstream>
using namespace std;
using std::to_string

std::string message = std::to_string(cxClient)