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

字符串的函数

头文件

# include <string.h>

五大函数:

strlen()、strcpy、strcat()、strcmp()、strstr()

用法:

strlen():计算字符串长度,但不计'\0'这个字符

#include <string.h>
int main()
{char arr[] = "abcdef";int len = strlen(arr);printf("%d\n", len);return 0;
}

输出:6

strcpy:把arr2[]字符串复制到arr1[]上(包括终止符)

#include <string.h>
int main()
{char arr1[] = "abcdef";char arr2[] = "abc";strcpy(arr1, arr2);printf("%s\n", arr1);return 0;
}

输出:abc

strcat():把arr2[]字符串追加到arr1[]上(覆盖掉arr1[]的'\0',arr2[]的'\0'保留下来)

#include <string.h>
int main()
{char arr1[20] = "hello";char arr2[] = " world";strcat(arr1, arr2);printf("%s\n", arr1);return 0;
}

输出:hello world

strcmp():

1.  strcmp()函数根据ASCII编码开始比较俩个字符串中的第一对字符,如果彼此相等, 继续   比较下一对字符所对应的ASCII码值,直到字符不相同或者达到终止字符'\0';

2. 函数返回值类型为 int

3. 函数返回值为0,表示俩个字符串相等;

    函数返回值为大于0的数字,表示第一个字符串大于第二个字符串;

    函数返回值为小于0的数字,表示第一个字符串小于第二个字符串;

#include <string.h>
int main()
{char* arr1 = "abcdef";char* arr2 = "abc";int ret = strcmp(arr1, arr2);if (ret > 0){printf(">   ");printf("ret=%d\n", ret);}else if (ret == 0){printf("=");printf("ret=%d\n", ret);}else{printf("<");printf("ret=%d\n", ret);}return 0;
}

输出:> ret=1

相关文章:

  • 跟着cherno手搓游戏引擎【29】Batch简单合批
  • RSTP环路避免实验(华为)
  • 图论之路径条数专题
  • Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之九 简单闪烁效果
  • 关于io多路复用select() 读就绪 写就绪 的浅显理解
  • macOS 13 Ventura (苹果最新系统) v13.6.6正式版
  • 【tensorflow框架神经网络实现鸢尾花分类】
  • LeetCode6. Z 字形变换(Java)
  • 基于Echarts的超市销售可视化分析系统(数据+程序+论文)
  • fastadmin学习01-windows下安装部署
  • Flink基于Hudi维表Join缺陷解析及解决方案
  • JimuReport积木报表 v1.7.4 公测版本发布,免费的JAVA报表工具
  • Vivado Lab Edition
  • LabVIEW电动汽车直流充电桩监控系统
  • 全方位保障企业远控安全,贝锐向日葵首发远程办公安全白皮书
  • “大数据应用场景”之隔壁老王(连载四)
  • 【mysql】环境安装、服务启动、密码设置
  • crontab执行失败的多种原因
  • ERLANG 网工修炼笔记 ---- UDP
  • gitlab-ci配置详解(一)
  • Javascript编码规范
  • JAVA并发编程--1.基础概念
  • Ruby 2.x 源代码分析:扩展 概述
  • Wamp集成环境 添加PHP的新版本
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 阿里云前端周刊 - 第 26 期
  • 半理解系列--Promise的进化史
  • 从零开始在ubuntu上搭建node开发环境
  • 服务器从安装到部署全过程(二)
  • 好的网址,关于.net 4.0 ,vs 2010
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 前端代码风格自动化系列(二)之Commitlint
  • 前端性能优化--懒加载和预加载
  • 通信类
  • MyCAT水平分库
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ​ArcGIS Pro 如何批量删除字段
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • #我与Java虚拟机的故事#连载17:我的Java技术水平有了一个本质的提升
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (南京观海微电子)——I3C协议介绍
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (三维重建学习)已有位姿放入colmap和3D Gaussian Splatting训练
  • (学习日记)2024.01.19
  • (转)四层和七层负载均衡的区别
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • .Mobi域名介绍
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .NET CORE使用Redis分布式锁续命(续期)问题