一个基础有关问题,关于头文件的

一个基础问题,关于头文件的
memset()这样的函数,为什么没引用csstring.h(好像是这个头文件吧?)就可以用?编译也没有问题
我用的环境是DEV C++。VC上没试过,请知道的告知一下VC是不是强制要加上??

------解决方案--------------------
应该是dev C++的问题、、其他的还是要加头文件的,貌似devC++会默认加一些头文件
------解决方案--------------------
为可移植性型考虑, 坚持加上string.h。 
一下是mingw的include目录,很多库的头文件中都包含string.h。 但是并非所有的编译器都是如此的 。 

$ grep 'string.h' *
grep: GL: Invalid request code
grep: ddk: Invalid request code
grep: gdb: Invalid request code
grep: gdiplus: Invalid request code
grep: libltdl: Invalid request code
mbctype.h:/* return values for _mbsbtype  and  _mbbtype in mbstring.h */
mbctype.h:/* NB: Corresponding _ismbc* functions are in mbstring.h */
mbctype.h:/* these are also in mbstring.h */
mbstring.h: * mbstring.h
mem.h: * mem.h maps to string.h
mem.h:#include <string.h>
memory.h: * memory.h maps to the standard string.h header.
memory.h:#include       <string.h>
oledlg.h:#include <string.h>
rpcproxy.h:#include <string.h>
string.h: * string.h
strings.h:    This file is provided because non ANSI fuctions are described in s
tring.h
strings.h:# include <string.h>
grep: sys: Invalid request code
tchar.h: * Note that you still need to include string.h or stdlib.h etc. to defi
ne
wchar.h: * Also in string.h.
winnt.h:#include <string.h>