diff options
Diffstat (limited to 'private/crt32/string/strnset.c')
-rw-r--r-- | private/crt32/string/strnset.c | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/private/crt32/string/strnset.c b/private/crt32/string/strnset.c new file mode 100644 index 000000000..400ff2e7f --- /dev/null +++ b/private/crt32/string/strnset.c @@ -0,0 +1,54 @@ +/*** +*strnset.c - set first n characters to single character +* +* Copyright (c) 1985-1991, Microsoft Corporation. All rights reserved. +* +*Purpose: +* defines _strnset() - sets at most the first n characters of a string +* to a given character. +* +*Revision History: +* 02-27-90 GJF Fixed calling type, #include <cruntime.h>, fixed +* copyright. +* 08-14-90 SBM Compiles cleanly with -W3 +* 10-02-90 GJF New-style function declarator. +* 01-18-91 GJF ANSI naming. +* +*******************************************************************************/ + +#include <cruntime.h> +#include <string.h> + +/*** +*char *_strnset(string, val, count) - set at most count characters to val +* +*Purpose: +* Sets the first count characters of string the character value. +* If the length of string is less than count, the length of +* string is used in place of n. +* +*Entry: +* char *string - string to set characters in +* char val - character to fill with +* unsigned count - count of characters to fill +* +*Exit: +* returns string, now filled with count copies of val. +* +*Exceptions: +* +*******************************************************************************/ + +char * _CALLTYPE1 _strnset ( + char * string, + int val, + size_t count + ) +{ + char *start = string; + + while (count-- && *string) + *string++ = (char)val; + + return(start); +} |