memset函数源码实现
生活随笔
收集整理的這篇文章主要介紹了
memset函数源码实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
void?*?memset(void?*dst,?int?val,?size_t?count)
將dst所指向的某一塊內存中的前count個?字節的內容全部設置為val指定的ASCII值, 第一個值為指定的內存地址,塊的大小由第三個參數指定,這個函數通常為新申請的內存做初始化工作, 其返回值為指向s的指針。
簡單來說就是把dst所指內存區域的前count個字節設置為val。返回指向dst的指針。
#include<stdio.h> #include<stdlib.h> #include<assert.h>#define?N?5void?*?my_memset(void?*dst,?int?val,?size_t?count) {//把val傳給*dst時兩個變量類型要相同,需要用到強制類型轉換assert(dst);????????????????????//這里需要檢驗dst的有效性char*?ret?=?(char*)dst;?????????while?(count--)????????????????{*ret++?=?(char)val;}return?dst; } int?main() {int?arr[N];int?i?;my_memset(arr,0,N*sizeof(int));for?(i?=?0;?i?<?N;?i++){printf("%d\n",?arr[i]);}system("pause");return?0; }轉載于:https://blog.51cto.com/iynu17/1715558
總結
以上是生活随笔為你收集整理的memset函数源码实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 实习小白::(转) Cocos2d-x
- 下一篇: 鼠标移动监听的注意事项