⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spdebug.cpp.svn-base

📁 股票软件源码
💻 SVN-BASE
字号:
/*
	Cross Platform Core Code.

	Copyright(R) 2001-2002 Balang Software.
	All rights reserved.

	Using:
		SP_OutputDebugString( LPCSTR );
		SP_MessageBox( UINT, LPCSTR, LPCSTR, UINT );
		SP_Trace( LPCSTR, ...)
*/
#include	"StdAfx.h"
void SP_OutputDebugString( LPCSTR lpszDebugString )
{
#ifdef	SP_WINDOWS
	::OutputDebugString( lpszDebugString );
#else
	fprintf( stderr, "%s", lpszDebugString );
#endif
}

#include	"ctype.h"
int SP_MessageBox( UINT hWnd, LPCSTR szTitle, LPCSTR szMsg, UINT uType )
{
#ifdef	SP_WINDOWS
	return	::MessageBox( (HWND)hWnd, szTitle, szMsg, uType );
#else
	fprintf( stderr, "%s\n%s\n", szTitle, szMsg );
	if( (uType&0x000F) == MB_ABORTRETRYIGNORE )
	{
lableAgain:
		fprintf( stderr, "(A)bort, (R)etry, (I)gnore?" );
		int	chAnswer	=	getchar( );
		switch( toupper( chAnswer ) )
		{
		case	'A':
			return	IDABORT;
		case	'R':
			return	IDRETRY;
		case	'I':
			return	IDIGNORE;
		default:
			goto	lableAgain;
		}
	}
	return	IDIGNORE;
#endif
}

#ifdef	_DEBUG
	void _cdecl	SP_Trace(LPCSTR pszFormat, ...)
	{
		int nBuf;
	#ifndef _WINDLL
		char szBuffer[512];
	#else
		static char szBuffer[512];
	#endif
		char* pszLocalFormat;

	#ifdef _NEARDATA
		char szFormat[128];
		ASSERT(lstrlen(pszFormat) < 128);
		lstrcpy(szFormat, pszFormat);
		pszLocalFormat = szFormat;
	#else
		pszLocalFormat = (LPSTR)pszFormat;
	#endif

		va_list args;
		va_start(args, pszFormat);

		nBuf = vsprintf(szBuffer, pszLocalFormat, args);
		SP_ASSERT(nBuf < sizeof(szBuffer));
		SP_OutputDebugString( szBuffer );
	}

#else

	void _cdecl	SP_Trace(LPCSTR pszFormat, ...)
	{
	}

#endif//_DEBUG

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -