1 ASSERT
Debug下用,检测错误
assert(fin != NULL && fout != NULL);
断言,在debug模式下,当fin或者fout其中一个为空时,程序就会被断下,弹出一个断言窗口,表示这两个变量中的一个或则两个为空,程序有异常
2 LogOK,还是log好用些
慢,卡机,偶尔用
不需要Debug,偶尔用
win32中使用,需要引入<windows.h>
例1 字符串
MessageBox(NULL,TEXT("HELLO!"),TEXT("标题"),MB_OK);
例2 字符串,数字混合
UINT a =99;
TCHAR szBuffer[1024];
LPCTSTR str = TEXT("适配器的显示模式的个数: %i");
wsprintf(szBuffer, str, a);
MessageBox(NULL, szBuffer, TEXT("适配器"), MB_OK);
例3 字符串,多个数字混合
UINT a =99;
UINT b =77;
TCHAR szBuffer[1024];
LPCTSTR str = TEXT("适配器的显示模式的个数: %i %i");
wsprintf(szBuffer, str, a,b);
MessageBox(NULL, szBuffer, TEXT("适配器"), MB_OK);
需要在Debug下运行,不好用,下面代码暂时无法运行
win32的api,需要引入<windows.h>
使用方法
#include <stdio.h>
#include <stdarg.h>
#include <ctype.h>
void __cdecl odprintf(const char *format, ...)
{
char buf[4096], *p = buf;
va_list args;
va_start(args, format);
p += _vsnprintf(p, sizeof buf - 1, format, args);
va_end(args);
while ( p > buf && isspace(p[-1]) )
*--p = '/0';
*p++ = '/r';
*p++ = '/n';
*p = '/0';
OutputDebugString(buf);
}
调用
odprintf("Cannot open file %s [err=%ld]", fname, GetLastError());
6 录像