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

Linux 常用C函数(内存及字符串操作篇2)

strcat(连接两字符串)
相关函数
bcopy,memccpy,memcpy,strcpy,strncpy

表头文件
#include <string.h>

定义函数
char *strcat (char *dest,const char *src);

函数说明
strcat()会将参数src字符串拷贝到参数dest所指的字符串尾。第一个参数dest要有足够的空间来容纳要拷贝的字符串。

返回值
返回参数dest的字符串起始地址

范例
#include <string.h.>
main()
{
char a[30]="string(1)";
char b[]="string(2)";
printf("before strcat() : %s\n",a);
printf("after strcat() : %s\n",strcat(a,b));
}

执行
before strcat () : string(1)
after strcat () : string(1)string(2)
 

strchr(查找字符串中第一个出现的指定字符)
相关函数
index,memchr,rinex,strbrk,strsep,strspn,strstr,strtok

表头文件
#include<string.h>

定义函数
char * strchr (const char *s,int c);

函数说明
strchr()用来找出参数s字符串中第一个出现的参数c地址,然后将该字符出现的地址返回。

返回值
如果找到指定的字符则返回该字符所在地址,否则返回0。

范例
#include<string.h>
main()
{
char *s=0123456789012345678901234567890”;
char *p;
p=strchr(s,'5');
printf("%s\n",p);
}

执行
5.68E+25
 

strcmp(比较字符串)
相关函数
bcmp,memcmp,strcasecmp,strncasecmp,strcoll

表头文件
#include<string.h>

定义函数
int strcmp(const char *s1,const char *s2);

函数说明
strcmp()用来比较参数s1和s2字符串。字符串大小的比较是以ASCII 码表上的顺序来决定,此顺序亦为字符的值。strcmp()首先将s1第一个字符值减去s2第一个字符值,若差值为0则再继续比较下个字符,若差值不为0 则将差值返回。例如字符串"Ac"和"ba"比较则会返回字符"A"(65)和'b'(98)的差值(-33)。

返回值
若参数s1和s2字符串相同则返回0。s1若大于s2则返回大于0的值。s1若小于s2则返回小于0 的值。

范例
#include<string.h>
main()
{
char *a="aBcDeF";
char *b="AbCdEf";
char *c="aacdef";
char *d="aBcDeF";
printf("strcmp(a,b) : %d\n",strcmp(a,b));
printf("strcmp(a,c) : %d\n",strcmp(a,c));
printf("strcmp(a,d) : %d\n",strcmp(a,d));
}

执行
strcmp(a,b) : 32
strcmp(a,c) :-31
strcmp(a,d) : 0

相关文章:

  • LeetCode -- Subsets II
  • WCDMA与CDMA2000网络结构比较
  • LeetCode -- Integer to English Words
  • WiMAX组网技术与解决方案
  • LeetCode -- Sum Root to Leaf Numbers
  • 移动设备管理(MDM)与OMA(OTA)DM协议向导(三)——AAA服务器
  • LeetCode -- Surrounded Regions
  • LeetCode -- Triangle
  • Nebula3中的骨骼动画: Animation子系统
  • LeetCode -- Ugly Number II
  • LeetCode -- Ugly Number
  • vim 显示行号、语法高亮、自动缩进的设置
  • LeetCode -- Linked List cycle
  • 根据textbox中的值,改变dropdownlist的选项
  • LeetCode -- Basic Calculator II
  • 网络传输文件的问题
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • 【mysql】环境安装、服务启动、密码设置
  • exif信息对照
  • Hexo+码云+git快速搭建免费的静态Blog
  • Java IO学习笔记一
  • Javascript设计模式学习之Observer(观察者)模式
  • JAVA并发编程--1.基础概念
  • JS题目及答案整理
  • leetcode388. Longest Absolute File Path
  • Promise面试题2实现异步串行执行
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • Terraform入门 - 3. 变更基础设施
  • ubuntu 下nginx安装 并支持https协议
  • 创建一个Struts2项目maven 方式
  • 服务器从安装到部署全过程(二)
  • 如何合理的规划jvm性能调优
  • 深度学习中的信息论知识详解
  • 世界编程语言排行榜2008年06月(ActionScript 挺进20强)
  • 试着探索高并发下的系统架构面貌
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • FaaS 的简单实践
  • k8s使用glusterfs实现动态持久化存储
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • ​queue --- 一个同步的队列类​
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #ifdef 的技巧用法
  • ${ }的特别功能
  • (70min)字节暑假实习二面(已挂)
  • (c语言)strcpy函数用法
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (windows2012共享文件夹和防火墙设置
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (算法设计与分析)第一章算法概述-习题
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • (转)memcache、redis缓存
  • (转)大道至简,职场上做人做事做管理
  • .Family_物联网