fill函式的標頭檔案為: std;
memset函式的標頭檔案為: string.h (c++中為 cstring)
用法:
fill(vector.begin(), vector.end(), val);
按照單元賦值,將乙個區間內的元素都賦予val值;
例項:
#include
using
namespace std;
intmain()
用法:
memset(arr, val, cnt);
將已開闢的記憶體空間arr的前cnt個位元組裝置值val;
memset函式是按照位元組去賦值的,故val有限制的,常用於賦初值0;
例項:
#include
#include
#include
using
namespace std;
const
int inf =
0x3f3f3f3f
;//特例,可用memset初始化
intmain()
memset函式賦值是針對位元組進行的,在賦初值為0時速度最快;
對char型別可用memset函式任意填充,char型別剛好佔據乙個位元組;
fill函式可針對任意型別賦值,但賦值速度最慢(比迴圈賦值的速度慢);
fill函式,fill與memset函式的區別
全文參考自 柳婼 的部落格 按照位元組填充某字元 在標頭檔案裡面 按照單元賦值,將乙個區間的元素都賦同乙個值 在標頭檔案裡面 因為memset函式按照位元組填充,所以一般memset只能用來填充char型陣列,因為只有char型佔乙個位元組 如果填充int型陣列,除了0和 1,其他的不能。因為只有0...
memset 函式與fill 函式的區別
1.memset 函式的格式為 memset 陣列名,值,陣列位元組總數 由於memset使用的是按位元組賦值,即對每個位元組賦相同的值,這樣對於乙個int型別的陣列,當memset的值賦為1時,實際上整個陣列的每乙個元素被賦的值是 2 0 2 8 2 16 2 24 因此建議memset的值一般取...
memset 函式與sort 函式
陣列的初始化及資料的排序 include include include include using namespace std int main int n while cin n int data n memset data,0,sizeof data memset 陣列名,初值,sizeof ...