2007-03-14 20:24:57 +00:00
|
|
|
/*
|
|
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
|
|
* PROJECT: ReactOS system libraries
|
2015-09-19 13:50:57 +00:00
|
|
|
* FILE: lib/sdk/crt/string/strset.c
|
2010-05-30 22:28:00 +00:00
|
|
|
* PURPOSE: Implementation of _strnset and _strset
|
2007-03-14 20:24:57 +00:00
|
|
|
* PROGRAMER: Unknown
|
|
|
|
* UPDATE HISTORY:
|
|
|
|
* 25/11/05: Added license header
|
|
|
|
*/
|
|
|
|
|
2010-05-30 22:28:00 +00:00
|
|
|
#if defined(__GNUC__) && !defined(__clang__)
|
2009-09-26 15:42:34 +00:00
|
|
|
#define __int64 long long
|
2011-02-10 11:35:05 +00:00
|
|
|
#elif defined(_MSC_VER)
|
|
|
|
#pragma warning(disable: 4164)
|
|
|
|
#pragma function(_strset)
|
2009-09-26 15:42:34 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef _WIN64
|
|
|
|
typedef unsigned __int64 size_t;
|
|
|
|
#else
|
|
|
|
typedef unsigned int size_t;
|
|
|
|
#endif
|
2007-03-14 20:24:57 +00:00
|
|
|
|
|
|
|
/*
|
|
|
|
* @implemented
|
|
|
|
*/
|
2007-11-08 21:06:20 +00:00
|
|
|
char* _strnset(char* szToFill, int szFill, size_t sizeMaxFill)
|
2007-03-14 20:24:57 +00:00
|
|
|
{
|
|
|
|
char *t = szToFill;
|
2007-11-08 21:06:20 +00:00
|
|
|
int i = 0;
|
|
|
|
while (*szToFill != 0 && i < (int) sizeMaxFill)
|
2007-03-14 20:24:57 +00:00
|
|
|
{
|
|
|
|
*szToFill = szFill;
|
|
|
|
szToFill++;
|
|
|
|
i++;
|
|
|
|
|
|
|
|
}
|
|
|
|
return t;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @implemented
|
|
|
|
*/
|
2007-11-08 21:06:20 +00:00
|
|
|
char* _strset(char* szToFill, int szFill)
|
2007-03-14 20:24:57 +00:00
|
|
|
{
|
|
|
|
char *t = szToFill;
|
2007-11-08 21:06:20 +00:00
|
|
|
while (*szToFill != 0)
|
2007-03-14 20:24:57 +00:00
|
|
|
{
|
|
|
|
*szToFill = szFill;
|
|
|
|
szToFill++;
|
|
|
|
|
|
|
|
}
|
|
|
|
return t;
|
|
|
|
}
|
2011-02-10 11:35:05 +00:00
|
|
|
|