C語言 模擬實現記憶體放置函式memset()

2022-09-23 23:45:11 字數 717 閱讀 1460

模擬實現記憶體放置函式memset()

我們檢視庫函式可知,函式原型為:

void * __cdecl memset ( void *dst, int val, size_t count),我們常用於將陣列arr向後幾個位元組初始化置為0,而並不怎麼用於置為其他元素,如1。這是因為:

val = 1,是int型,將它賦給char型dest,則只把低八位賦給dest,下次再接著迴圈,每次都只把乙個位元組長度的1賦給dest。如此重複count次,結束。在輸出過程中,而arr是int型,乙個int型是4個char型,即每次輸出的結果都是:1000  0000   1000  0000  1000 0000  1000  0000這個十進位制的值。

**如下:

#define _crt_secure_no_warnings 1

#include

#include

#include

void *my_memset(void *p1, int val, size_t count)

return ret;

}int main()

; int i = 0;

int *ret = my_memset(arr, 1, 16);

for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)

system("pause");

return 0;

}

C語言 模擬實現strstr函式

問題描述 寫乙個函式模擬實現strstr函式。思路 strstr函式的功能是判斷在乙個字串在另乙個字串中是否有包含,比如strstr str,string 就是判斷字串string是否是str的子串。如果是,則該函式返回string在str中首次出現的位址 否則,返回null。基於這個特點,我們可以...

C語言模擬實現strncat函式

strncat函式 char strncat char strdest,const char strsource,size t count strsource 源字串 strdest 目的字串 把源字串所指字串的前n個字元新增到目的字串結尾處 覆蓋目的字串結尾處 的 0 再追加 0 說明 源字串和目...

模擬實現C語言庫函式

1.模擬實現strlen 方式1.計數器方式 intmy strlen const char str return count 方式2.不建立臨時變數計數器 遞迴 intmy strlen const char str 方式3.指標 指標的方式 intmy strlen char s 2.模擬實現s...