memset, wmemset

Sets buffers to a specified character.

void *memset( 
   void *dest, 
   int c, 
   size_t count  
); 
wchar_t *wmemset( 
   wchar_t *dest, 
   wchar_t c, 
   size_t count 
);

Parameters

  • dest
    Pointer to destination.

  • c
    Character to set.

  • count
    Number of characters.

Return Value

The value of dest.

Remarks

Sets the first count characters of dest to the character c.

Security Note Make sure that the destination buffer has enough room for at least count characters. For more information, see Avoiding Buffer Overruns.

Requirements

Routine

Required header

memset

<memory.h> or <string.h>

wmemset

<wchar.h>

For additional compatibility information, see Compatibility in the Introduction.

Libraries

All versions of the C run-time libraries.

Example

// crt_memset.c
/* This program uses memset to
 * set the first four chars of buffer to "*".
 */

#include <memory.h>
#include <stdio.h>

int main( void )
{
   char buffer[] = "This is a test of the memset function";

   printf( "Before: %s\n", buffer );
   memset( buffer, '*', 4 );
   printf( "After:  %s\n", buffer );
}

Output

Before: This is a test of the memset function
After:  **** is a test of the memset function

Here's an example of the use of wmemset:

// crt_wmemset.c
/* This program uses memset to
 * set the first four chars of buffer to "*".
 */

#include <wchar.h>
#include <stdio.h>

int main( void )
{
   wchar_t buffer[] = L"This is a test of the wmemset function";

   wprintf( L"Before: %s\n", buffer );
   wmemset( buffer, '*', 4 );
   wprintf( L"After:  %s\n", buffer );
}

Output

Before: This is a test of the wmemset function
After:  **** is a test of the wmemset function

.NET Framework Equivalent

System::Buffer::SetByte

See Also

Reference

Buffer Manipulation

_memccpy

memchr, wmemchr

memcmp, wmemcmp

memcpy, wmemcpy

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l