C庫函式的模擬實現

2021-09-22 10:33:22 字數 3315 閱讀 8031

1.模擬實現strlen

#define _crt_secure_no_warnings 1

#include

#include

size_t my_strlen

(const

char

* str)

return count;

}int

main()

2.模擬實現strcpy

#define _crt_secure_no_warnings 1

#include

#include

#include

char

*my_strcpy

(char

* dest,

const

char

* src)

return ret;

}int

main()

3.模擬實現strncpy

#define _crt_secure_no_warnings 1

#include

#include

#include

char

*my_strncpy

(char

* dest,

const

char

* src,

int num)

return ret;

}int

main()

4.模擬實現strcat

#define _crt_secure_no_warnings 1

#include

#include

#include

char

*my_strcpy

(char

* dest,

const

char

* src)

while

(*dest =

*src)

return ret;

}int

main()

5.模擬實現strncat

#define _crt_secure_no_warnings 1

#include

#include

#include

char

*my_strncat

(char

* dst,

const

char

* src, size_t num)

while

(num--

&&*src)

*dst =

'\0'

;return ret;

}int

main()

6.模擬實現strcmp

#define _crt_secure_no_warnings 1

#include

#include

#include

intmy_strcmp

(const

char

* str1,

const

char

* str2)

// 注釋 字元比較:按無符號字元比較if(

*(unsigned

char

*)str1

unsigned

char

*)str2)

else}if

(*str1 !=

'\0'

)return1;

elseif(

*str2 !=

'\0'

)return-1

;else

return0;

}int

main()

7.模擬實現strstr

#define _crt_secure_no_warnings 1

#include

#include

#include

char

*my_strstr

(const

char

* str1,

const

char

* str2)if(

*ret2 ==

'\0'

)else

++str1;

}return

null;}

intmain()

8.模擬實現memcpy

#define _crt_secure_no_warnings 1

#include

#include

#include

void

*my_memcpy

(void

* dst,

const

void

* src, size_t num)

return dst;

}int

main()

system

("pause");

return0;

}

9.模擬實現memmove(理解起來較困難,可以看示意圖)

庫函式的模擬實現

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

模擬實現C語言庫函式

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

模擬實現庫函式 printf

上次在部落格中提到過可變引數列表的使用,今天我再次使用可變引數列表來模擬實現庫函式printf。實現 如下 如有不理解的地方請檢視可變引數列表那篇部落格 include includevoid my printf const char format,break case s break defaul...