一、C語言string.h和memory.h某些函數重複
在C語言中,為了使用memset()函數,你是選擇#include <string.h>還是<memory.h>?兩個都可以,如何選擇?
<string.h>,标準裡面這麼寫的,全平台通用,<memory.h> 這個 大部分編譯器都實作了。
http://pubs.opengroup.org/onlinepubs/7908799/xsh/string.h.html
http://www.cplusplus.com/reference/clibrary/cstring/
VC15裡面,memory.h定義了string.h裡面的部分函數,包括memset、memchr、memcmp以及相關的安全操作,定義的部分是和string.h裡面一模一樣的。
而gcc(4.4.5)裡面,memory.h裡面就直接寫了#include<string.h>。
二、memory由C++語言提供
此頭定義用于管理動态記憶體的正常實用程式,是動态記憶體管理庫的一部分。