std:: memset
|
Definiert im Header
<cstring>
|
||
|
void
*
memset
(
void
*
dest,
int
ch,
std::
size_t
count
)
;
|
||
Kopiert den Wert static_cast < unsigned char > ( ch ) in jedes der ersten count Zeichen des Objekts, auf das dest zeigt. Wenn das Objekt ein potenziell überlappendes Teilobjekt ist oder nicht TriviallyCopyable ist (z.B. Skalar, C-kompatible Struktur oder ein Array von trivial kopierbarem Typ), ist das Verhalten undefiniert. Wenn count größer als die Größe des Objekts ist, auf das dest zeigt, ist das Verhalten undefiniert.
InhaltParameter
Rückgabewertdest Hinweise
Lösungen dafür umfassen
std::fill
mit flüchtigen Zeigern,
(C23)
memset_explicit()
,
(C11)
memset_s
, FreeBSD
explicit_bzero
oder Microsoft
Beispiel
Diesen Code ausführen
#include <bitset> #include <climits> #include <cstring> #include <iostream> int main() { int a[4]; using bits = std::bitset<sizeof(int) * CHAR_BIT>; std::memset(a, 0b1111'0000'0011, sizeof a); for (int ai : a) std::cout << bits(ai) << '\n'; } Ausgabe: 00000011000000110000001100000011 00000011000000110000001100000011 00000011000000110000001100000011 00000011000000110000001100000011 Siehe auch
| |||||||||||||||||||||||||