strcmpstrncmp都是用来比较字符串的,区别在于strncmp是比较指定长度字符串,两者都是二进制安全的,且区分大小写

strcmp

strcmp(string1,string2)

设这两个字符串为str1,str2,

  • 0 - 如果两个字符串相等
  • <0 - 如果 string1 小于 string2 (负数)
  • >0 - 如果 string1 大于 string2 (正数)

即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇’\0’为止。

strncmp

strncmp(string1,string2,length)

strncmp函数是指定比较size个字符。也就是说,如果字符串s1与s2的前size个字符相同,函数返回值为0。此函数功能即比较字符串str1和str2的前maxlen个字符。如果前maxlen字节完全相等,返回值就=0;在前maxlen字节比较过程中,如果出现str1[n]与str2[n]不等,则依次比较str1和str2的前n位,设i(i< n)为两字符串首次的不同位,则返回(str1[i]-str2[i])。

  • 0 - 如果两个字符串相等
  • <0 - 如果 string1 小于 string2(负数)
  • >0 - 如果 string1 大于 string2  (正数)

如; 
str1=”ABCDHG”,str2=”ABCDEF” 
strncmp(str1,str2,4)的返回值是 0; 
strncmp(str1,str2,5)的返回值是 1;

strcmp与strncmp的区别相关推荐

  1. 【面试题】C语言:模拟实现memcmp,试比较memcmp与strcmp,strncmp的区别

    模拟实现内存比较函数memcmp: 该函数与strcmp有相似之处,都可用于字符串比较是否相同,若相同,则返回0值.若前者大于后者,则返回大于0的整型值,否则返回小于0的整型值.  区别在于: str ...

  2. C语言 : strcmp与strncmp详解

    strcmp与strncmp都是用来比较字符串的,区别在于能否比较指定长度字符串. strcmp 设这两个字符串为str1,str2, 若str1==str2,则返回零: 若str1 > str ...

  3. strcmp和strncmp

    strcmp 和之前一样我们先来看看strcmp在msdn中的定义: The strcmp function compares string1 and string2 lexicographicall ...

  4. C语言——数组、字符串处理函数、strlen、strcpy和strncpy、strcat和strncat、strcmp和strncmp

    目录 一.数组 1.定义:类型 数组名[元素个数] 2.数组不能动态定义 3.如何访问数组中的元素:数组名[下标] 4.循环与数组的关系 5.数组的初始化 二.C99标准中的数组 三.字符串处理函数 ...

  5. 编写strcmp 和strncmp

    函数原型及介绍 若str1==str2,则返回零: 若str1 > str2,则返回正数: 若str1< str2,则返回负数. 即:两个字符串自左向右逐个字符相比(按ASCII值大小相比 ...

  6. strcasecmp php,PHP strcmp()和strcasecmp()的区别实例

    这篇文章主要介绍了PHP中strcmp()和strcasecmp()函数字符串比较用法,结合实例形式较为详细的分析了strcmp()和strcasecmp()函数的功能,使用方法与区别 本文实例讲述了 ...

  7. strcmp和strncmp函数

    1.strcmp This function starts comparing the first character of each string. If they are equal to each ...

  8. c语言strcmp() 和strncmp()

    一. strcmp() 包含头文件:#include <string.h> 1. 函数原型 int strcmp(const char *str1, const char *str2); ...

  9. 用c语言strncmp函数,strcmp和strncmp函数

    1.strcmp This function starts comparing the first character of each string. If they are equal to each ...

最新文章

  1. 基于三维卷积神经网络的RGB-D显著目标检测
  2. tensorflow笔记 :常用函数说明
  3. 安卓-控制控件的宽度占屏幕的一半且水平居中显示
  4. python3数据类型:List列表
  5. mysql 连接池 100_mysql的最大连接数默认是100_MySQL
  6. 你会用Java实现两个大数相加吗
  7. C#上位机工作感想1(2020.7.1-2021.4.4)
  8. 屏蔽网站、网页和弹窗的方法
  9. 将elf文件转换为bin文件
  10. scp 及 ssh 命令出错解决
  11. thinkpad选择启动项_ThinkPad如何设置光驱引导启动
  12. 几百本计算机类常用书籍
  13. BPM系统终于告一段落
  14. 已经开工三天的软件测试工程师:被女足和谷爱凌感动到了
  15. 【计算几何】德劳内三角剖分算法 | 利用 scatter 绘制散点图 | 实现外接圆生成 | scipy库的 Dealunay 函数 | 实战: A-B间欧氏距离计算
  16. powerquery分组_Power Query中的Table.Group函数详细分析
  17. python numpy和pandas库的区别_Python模块 - Numpy与Pandas
  18. Ubuntu20.04下安装 NVIDIADriver-460、CUDA-10.0、cuDNN、tensorflow、pytorch
  19. Javascript的图片滚动浏览效果代码
  20. 用postgis制作wkt

热门文章

  1. 【集电极接地 共集电级放大电路 原理讲解与元器件取值 (详细参数说明)+multisim仿真】
  2. arch检验python_Python玩转金融时间序列之ARCH与GARCH模型
  3. 浮点数可以用==来比较是否相等吗?
  4. Codewar (1)
  5. Spring视频转码工具类ffmpeg
  6. DRGs疾病诊断相关分组管理系统
  7. 软件工程师道德规范(转载)
  8. 人类对于人工智能的担忧来源于什么(上)
  9. Win10管理员命令提示符窗口的七种打开方法汇总
  10. [MISC]USB键鼠流量