reactos/rosapps/applications/sysutils/utils/sdkparse/safestr.h
Aleksey Bragin 2012315e5a - Start rosapps rearrange and cleanup process.
svn path=/trunk/; revision=34303
2008-07-05 11:46:22 +00:00

62 lines
946 B
C

//
// safestr.h
//
// safe versions of some string manipulation routines
//
#ifndef __SAFESTR_H
#define __SAFESTR_H
#include <tchar.h>
#ifndef tchar
#define tchar TCHAR
#endif//tchar
#include <string.h>
#include "assert.h"
inline size_t safestrlen ( const tchar *string )
{
if ( !string )
return 0;
return _tcslen(string);
}
inline tchar* safestrcpy ( tchar* strDest, const tchar* strSource )
{
ASSERT(strDest);
if ( !strSource )
*strDest = 0;
else
_tcscpy ( strDest, strSource );
return strDest;
}
inline tchar* safestrncpy ( tchar* strDest, const tchar* strSource, size_t count )
{
ASSERT(strDest);
if ( !strSource )
count = 0;
else
_tcsncpy ( strDest, strSource, count );
strDest[count] = 0;
return strDest;
}
inline tchar* safestrlwr ( tchar* str )
{
if ( !str )
return 0;
return _tcslwr(str);
}
inline tchar* safestrupr ( tchar* str )
{
if ( !str )
return 0;
return _tcsupr(str);
}
#endif//__SAFESTR_H