如何在MessageBox中显示const char值

MFC C++ How do I display a const char value in MessageBox?

本文关键字:const char 显示 MessageBox      更新时间:2023-10-16

我希望标题足够好,可以帮助解释需要什么。解决了这个问题之后,我的大部分项目应该完成了。

当我做这个

    char e[1000] = "HELLO";
    CString msg;
    msg.Format(_T("%s"), e);
    MessageBox(msg);

消息框只是显示我随机的单词,如"㹙癞㹙癞",而不是我想要的"HELLO"。如何解决这个问题?

帮助将是感激的。谢谢你

首先,你真的那样使用MessageBox API吗?检查MSDN文档。现在回答你的问题,

char e[1000] = "HELLO";
CString msg;
msg.Format(_T("%S"), e); // Mind the caps "S"
MessageBox( NULL, msg, _T("Hi"), NULL );

我认为,这里甚至不需要Format数据。你可以使用::

TCHAR e[1000] = _T("HELLO") ;
MessageBox( NULL, e, _T("Hi"), NULL ) ;

这样,如果_UNICODE is defined, TCHAR and MessageBox将被选为WCHAR and MessageBoxW,如果not defined被选为char and MessageBoxA