为了账号安全,请及时绑定邮箱和手机立即绑定

以下是关于MessageBox函数的问题,麻烦大佬帮忙看看,问题所在!

以下是关于MessageBox函数的问题,麻烦大佬帮忙看看,问题所在!

慕妹3146593 2021-07-22 19:15:52
我傻乎乎的用了 MessageBox("%d",CurrentCommodityIndex);想显示CurrentCommodityIndex的数,结果程序卡死了,一查MSDN,MessageBox前两个参数是字符,后一个是操作形式,我想知道有没有一种操作方式能显示CurrentCommodityIndex的值
查看完整描述

3 回答

?
MM们

TA贡献1886条经验 获得超2个赞

自己写一个格式化MessageBox嘛:

#include <windows.h>
#include <tchar.h>
#include <stdio.h>

int CDECL MessageBoxPrintf(TCHAR * szCaption, TCHAR * szFormat, ...)
{
va_list pArgList;
va_start(pArgList, szFormat);

TCHAR szBuffer[1024];
_vsntprintf_s(szBuffer, sizeof szBuffer / sizeof TCHAR, szFormat, pArgList);

va_end(pArgList);

return MessageBox(NULL, szBuffer, szCaption, MB_OK);
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iShowCmd)
{
int year = 2007;
const TCHAR* greeting = "Hello!";

MessageBoxPrintf(TEXT("Message"), TEXT("%s This is year %d"), greeting, year);
}

或者使用wsprintf:

#include <windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
TCHAR buffer[1024];

int year = 2007;
const TCHAR* month = TEXT("Apr.");
int day = 11;

wsprintf(buffer, TEXT("Today is: %d %s %d"), day, month, year);
MessageBox(NULL, buffer, TEXT("Data Report"), MB_OK | MB_ICONASTERISK);
}



查看完整回答
反对 回复 2021-07-29
?
慕仙森

TA贡献1827条经验 获得超7个赞

MessageBox("数值:"+CurrentCommodityIndex,"提示",MB_ICONINFORMATION);
或者用一个指针.

查看完整回答
反对 回复 2021-07-29
  • 3 回答
  • 0 关注
  • 392 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信