memset、wmemset

对指定字符的设定缓冲区。

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

参数

  • dest
    目标的指针。

  • c
    字符集。

  • count
    字符数量

返回值

dest 的值。

备注

设置第一个 count 的 dest的字符为 c字符.

Security Note ,确保目标缓冲区具有至少 count 字符的足够的空间。 有关更多信息,请参见避免缓冲区溢出

要求

例程

必需的标头

memset

<memory.h> 或 <string.h>

wmemset

<wchar.h>

有关其他兼容性信息,请参见“简介”中的兼容性

C 运行时库的所有版本。

示例

// 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

这是使用 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 等效项

System::Buffer::SetByte

请参见

参考

缓冲区操作

_memccpy

memchr、wmemchr

memcmp、wmemcmp

memcpy、wmemcpy

_strnset、_strnset_l、_wcsnset、_wcsnset_l、_mbsnset、_mbsnset_l