fill包含在中,btw,中也包含了它。
memset包含在头文件中。
两者都可以用来对数组填充,那么他们的区别在哪里呢?
memset是对按照字节来填充的,所以一般用来填充char型数组,也经常用于填充int型的全0或全-1操作。
int arr[10];
memset(arr,0,sizeof(arr));
fill是按照单元来填充的,所以可以填充一个区间的任意值。
int arr[10];
fill(arr,arr+10,65);
vector<int> arr{0, 1, 2, 3, 4, 5};
fill(arr.begin(),arr.end(),65);