在windows下使用MessageBox实现类printf功能

来源:互联网 发布:金融互助平台源码下载 编辑:程序博客网 时间:2024/06/05 11:37
  在C/C++控制台编程中,我们经常通过printf来随时查看变量的情况,用于调试程序,但是C/C++在windows编程中,没有办法是用printf,那该怎么办?有过javascript程序调试经验的程序员肯定经常使用alert来弹出变量用于调试,所以我们可以借鉴弹出窗口,利用windows API中的MessageBox来弹出变量信息,帮助我们调试。下面是我根据这个思维写的测试程序,共初学者参考。

#include <windows.h>#include <stdio.h>#include <tchar.h>#include <stdarg.h>//C语言中可变参数需要包含的头文件/******************************************************************************@functiion: MessageBoxPrintf@args: szCaption--弹窗标题;szFormat--格式化字符串;...--可变参数列表******************************************************************************/int CDECL MessageBoxPrintf(TCHAR * szCaption, const TCHAR * szFormat,...){TCHAR szBuffer[1024];va_list pArgs;va_start(pArgs, szFormat);//把pArgs指向szFormat的第一个参数_vstprintf_s(szBuffer, sizeof(szBuffer)/sizeof(TCHAR), szFormat, pArgs);va_end(pArgs);return MessageBox(NULL,szBuffer, szCaption, MB_OK | MB_ICONINFORMATION );}int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine,int iCmdShow){INT16 a = 12, b=65, c= 255;//下面是测试弹窗效果MessageBoxPrintf(TEXT("标题"), TEXT("Hello, %d, %c, %x"), a, b, c);return 0;}



0 0
原创粉丝点击