memset ()-将缓冲区设置为值
标准
标准/扩展 | C 或 C++ | 依赖关系 |
---|---|---|
ISO C
XPG4 XPG4.2 C99 单一 UNIX 规范版本 3 |
两个 |
格式
#include <string.h>
void *memset(void *dest, int c, size_t count);
一般描述
memset () 内置函数将 dest 的前 count 个字节设置为转换为无符号整数的值 c 。
返回值
memset () 返回 dest的值。
示例
CELEBM15
/* CELEBM15
This example sets 10 bytes of the buffer to "A" and
the next 10 bytes to "B".
*/
#include <string.h>
#include <stdio.h>
#define BUF_SIZE 20
#define HALF_BUF_SIZE BUF_SIZE/2
int main(void)
{
char buffer[BUF_SIZE + 1];
char *string;
memset(buffer, 0, sizeof(buffer));
string = (char *)memset(buffer,'A', HALF_BUF_SIZE);
printf("\nBuffer contents: %s\n", string);
memset(buffer+HALF_BUF_SIZE, 'B', HALF_BUF_SIZE);
printf("\nBuffer contents: %s\n", buffer);
}
output
Buffer contents: AAAAAAAAAA
Buffer contents: AAAAAAAAAABBBBBBBBBB