C语言字符串操作函数中,memcat,memcmp等和strcat,strcmp等功能都一样,但是为什么在标准库中都存在?

如题所述

请注意,他们是不一样的

strcat,strcmp只能操作存储字符串的内存空间

memcmp可以操作任意数据类型的内存空间

我们就拿memcmp和strcmp来对比:

int memcmp(const void *buf1, const void *buf2, unsigned int
count);
//可以看到,他的前两个参数,内存中的数据类型是void,你可以强制转成任意的数据类型

extern int strcmp(const char *s1,const char * s2);
//strcmp他的参数就是char * 了,也就是说,只能是存字符串的内存空间。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-28
strcat/strcmp对字符串操作。memcat/memcmp对内存操作

C语言字符串操作函数中,memcat,memcmp等和strcat,strcmp等功能都一样...
strcat,strcmp只能操作存储字符串的内存空间 memcmp可以操作任意数据类型的内存空间 我们就拿memcmp和strcmp来对比:int memcmp(const void *buf1, const void *buf2, unsigned int count);\/\/可以看到,他的前两个参数,内存中的数据类型是void,你可以强制转成任意的数据类型 extern int strcmp(const c...

相似回答