C ++中的记忆集
在本节中,我们将了解memset()
C++中函数的目的是什么。此函数将字符的值转换为无符号字符,并将其复制到给定str[]指向的对象的前n个字符中的每个字符中。如果n大于字符串大小,则它将是不确定的。
memset()
函数的语法
void* memset( void* str, int c, size_t n);
在此示例中,将使用一个字符串,然后将每个字符转换为长度不超过n的其他字符。
示例
#include<bits/stdc++.h> using namespace std; int main() { char str[] = "Hello World"; memset(str, 'o', 6); //take n = 6 cout << str; }
输出结果
ooooooWorld
的memset()
可以是使用将所有值设置为0或-1。但是我们不能使用其他一些值,因为memset()
逐字节工作。
示例
#include<bits/stdc++.h> using namespace std; int main() { int array[10]; memset(array, 0, sizeof(array)); for(int i = 0; i<10; i++){ cout << array[i] << " "; } cout << endl; memset(array, -1, sizeof(array)); for(int i = 0; i<10; i++){ cout << array[i] << " "; } cout << endl; memset(array, 3, sizeof(array)); for(int i = 0; i<10; i++){ cout << array[i] << " "; } cout << endl; }
输出结果
0 0 0 0 0 0 0 0 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 50529027 50529027 50529027 50529027 50529027 50529027 50529027 50529027 50529027 50529027