当前位置: 首页 > news >正文

解析C语言strcmp()函数

函数名:  strcmp

头文件: <string.h>

函数原型:  int strcmp(const char *str1,const char *str2);

功 能:   比较两个字符串的大小,区分大小写

参 数: str1和str2为要比较的字符串

返回值:  str1 > str2 , 返回 1;

                str1 < str2 , 返回 -1;

                str1 == str2 , 返回 0;

 函数表达:

第一种返回方式

#include<stdio.h>
#include<assert.h>
int my_strcmp(const char* str1, const char* str2)
{assert(str1 && str2);//比较while (*str1 == *str2){if (*str1 == '\0'){return 0;//相等}str1++;str2++;}if (*str1 > *str2)return 1;//大于elsereturn -1;//小于
}int main()
{char* p1 = "abcdef";char* p2 = "abcdef";int ret = my_strcmp(p1,p2);printf("ret = %d\n",ret);return 0;
}

 第二种返回方式

#include<stdio.h>
#include<assert.h>
int my_strcmp(const char* str1, const char* str2)
{assert(str1 && str2);//比较while (*str1 == *str2){if (*str1 == '\0'){return 0;//相等}str1++;str2++;}return (*str1 - *str2);
}int main()
{char* p1 = "abcdef";char* p2 = "bcdef";int ret = my_strcmp(p1,p2);printf("ret = %d\n",ret);return 0;
}

 

其中用了assert()函数

函数名: assert

头文件:<assert.h> 

函数原型: void assert( int expression );

功能: 断言一个表达式是否正确

参数:expression如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行

返回值:没有返回值

http://www.lryc.cn/news/26206.html

相关文章:

  • 初识scrapy
  • (JUC)核心线程 和 救急线程的区别;Executors-固定大小线程池单线程线程池
  • vue2的动画和过渡效果
  • 正数负数的取反运算推导过程
  • C语言 条件编译
  • Linux: ARM GIC只中断CPU 0问题分析
  • 测试软件5
  • 前端JS内存管理
  • 第七章.集成学习(Ensemble Learning)—袋装(bagging),随机森林(Random Forest)
  • Java_面向对象
  • 【IoT】智能烟雾报警器
  • Python实现定时执行脚本(5)
  • JavaSe第4次笔记
  • epoll机制
  • Java使用不同方式获取两个集合List的交集、补集、并集(相加)、差集(相减)
  • 【Android笔记80】Android之Retrofit适配器和文件上传下载
  • Nodejs模块化
  • C++STL基础
  • 数学建模经验【更新中】
  • 【python学习笔记】:Excel 数据的封装函数
  • 如何获取或设置CANoe以太网网卡信息(GET篇)
  • “终于我从字节离职了...“一个年薪50W的测试工程师的自白...
  • 【Spring】八种常见Bean加载方式
  • 第五回:样式色彩秀芳华
  • 关于@Test单元测试
  • 【项目实战】WebFlux整合r2dbc-mysql实战
  • go版本分布式锁redsync使用教程
  • 大数据之Hudi数据湖_大数据治理_简介_发展历史_特性_应用场景---大数据之Hudi数据湖工作笔记0001
  • 射频功率放大器基于纵向导波的杆状构件腐蚀诊断方法的研究
  • Leedcode 二分查找 理解1