MessageBox() 函数如何显示一个 int 型变量

hello___world___! 2012-01-20 04:57:11
调用Windows API 函数 MessageBox(HWND hWnd,LPCTSTR lpText,LPCTSTR lpCaption,UINT uType); 显示出一个int 型的变量,把我撂倒了,求助!

例: int posX=100;

然后调用Windows API的 MessageBox 函数 将posX变量的值显示出来。
...全文
4466 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
chunyou128 2012-02-02
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 qq539929779 的回复:]

int posX=100;
CString strInfo;
strInfo.Format("%d", posX);
MessageBox(0,strInfo,NULL,0);

这样就可以了
[/Quote]
++
li08240418 2012-02-02
  • 打赏
  • 举报
回复
格式转换
schlafenhamster 2012-02-02
  • 打赏
  • 举报
回复
debug时:
afxDump << xPos << "\n";
SuperLy 2012-02-02
  • 打赏
  • 举报
回复
这个是ANSI版的,要Unicode的,自己修改。〔限vs20XX,VC6通不过编译〕
#define MsgBox(pInfo, ...) \
{ char pBuf[256];\
sprintf_s(pBuf, 256, pInfo, __VA_ARGS__);\
::MessageBoxA(0, pBuf, "调试", MB_TOPMOST|64);\
}
lgstudyvc 2012-02-02
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 gameslq 的回复:]
比较简单、楼上的都说了
[/Quote]

9494
gameslq 2012-02-02
  • 打赏
  • 举报
回复
比较简单、楼上的都说了
jianghandaxue 2012-02-02
  • 打赏
  • 举报
回复 1
int posX = 100;
CString STemp;
STemp.Format( _T("%d"),posX );

MessageBox( STemp );
qq539929779 2012-02-02
  • 打赏
  • 举报
回复
int posX=100;
CString strInfo;
strInfo.Format("%d", posX);
MessageBox(0,strInfo,NULL,0);

这样就可以了
zgszft 2012-01-20
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 fronz 的回复:]

说道这个MessageBox(),我想起
我经常用AfxMessageBox()+CString类型定义+.Format
这三行加到程序体中的很多位置调试数据,任何常用类型的都没问题,立下很多功劳。
[/Quote]
同上
fronz 2012-01-20
  • 打赏
  • 举报
回复
说道这个MessageBox(),我想起
我经常用AfxMessageBox()+CString类型定义+.Format
这三行加到程序体中的很多位置调试数据,任何常用类型的都没问题,立下很多功劳。

正在无聊中 2012-01-20
  • 打赏
  • 举报
回复
你打算是WIN32 API是吧?

#include <stdio.h>
#include <windows.h>
int WINAPI WinMain(...){
int x=100;
char buf[100]={0};
sprintf(buf,"%d",x);
MessageBox(NULL,buf,NULL,MB_OK);
return 0;
}
qualcode 2012-01-20
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 li08240418 的回复:]

都是好办法
[/Quote]

。。。。。
li08240418 2012-01-20
  • 打赏
  • 举报
回复
都是好办法
zgszft 2012-01-20
  • 打赏
  • 举报
回复
一般用format
例子:
int a=1;
CString b;
b.format(_T("%d"),a);
MessageBox(b);
jixiang1983 2012-01-20
  • 打赏
  • 举报
回复
int posX=100;
char buffer[128] = {0};
sprintf(buffer,"posX == %d",posX);
MessageBox(hwnd,buffer,"", MB_OK);
Eleven 2012-01-20
  • 打赏
  • 举报
回复
CString::Format()格式化一下然后再MessageBox输出即可
  • 打赏
  • 举报
回复
2种办法:
1、
CString s;
s.Format(_T("%d"), posX);
MessageBox(..., s,...);
2、
LPTSTR lpsz = new TCHAR[100];
_itot(posX, lpsz, 10);
MessageBox(..., lpsz,...);
delete lpsz;
keith_cheung 2012-01-20
  • 打赏
  • 举报
回复
int posX = 100;
CString STemp;
STemp.Format( _T("%d"),posX );

MessageBox( STemp );
lostit 2012-01-20
  • 打赏
  • 举报
回复
itoa或string.format
  • 打赏
  • 举报
回复
自己顶下,期待帮助!

16,470

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧