Функция memset заполняет буфер указанным символом.
void *memset( void *dest, int c, size_t count );
Эта функция определена в memory.h и string.h.
Параметры:
Пример использования данной функции для заполнения строчного буфера:
#include "stdafx.h" #include "string.h" #include "stdio.h" #include "iostream.h" struct MyStruct { char test[4]; int i; }; void main() { char buffer[9]; strcpy(buffer,"123456789"); cout << buffer << " not memcpy" << endl; memset(buffer,'1',sizeof(buffer)); cout << buffer << " memset" << endl; }
Так же эту функцию можно применять для обнуления структур.
#include "stdafx.h" #include "string.h" #include "stdio.h" #include "iostream.h" struct MyStruct { char test[5]; int i; }; void main() { MyStruct mm; strcpy(mm.test,"hello"); mm.i=5; cout << mm.i << " " << mm.test << " not memset " << endl; memset(&mm,0,sizeof(mm)); cout << mm.i << " " << mm.test << "memset " << endl; }