Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3217546
  • 博文数量: 1805
  • 博客积分: 135
  • 博客等级: 入伍新兵
  • 技术积分: 3345
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-19 20:01
文章分类

全部博文(1805)

文章存档

2017年(19)

2016年(80)

2015年(341)

2014年(438)

2013年(349)

2012年(332)

2011年(248)

分类:

2011-11-28 10:05:21

原文地址:strcmp与memcmp的区别 作者:星巴

int memcmp (const void *a1, const void *a2, size_t size) 
-->函数memcmp用于比较字符串s1与s2的前size个字符,如果两上字符块相同,memcmp将返回0。

int strcmp (const char *s1, const char *s2) 
-->这个函数用来比较s1和s2字符串,这个函数将返回一个值,它的符号与第一对不同的字符的比较结果相关。如果两个字符串相等的话,strcmp将返回0。如果s1是s2的一个子串的话,s1小于s2.

明显看出,strcmp用于字符串的比较,比较过程中遇到停止符'\0'则终止比较,而memcmp则比较两个内存快,即使是停止符'\0'也是内容之一.

除此之外,应用时还应结合效率来考虑,因为strcmp在每字节比对时都要检测停止符,而memcmp则不需要这么做,因此memcmp的效率更高些.

阅读(4897) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~