string.h头文件中常用的函数

C 库函数 - strcat()

char *strcat(char *dest, const char *src)

把 src 所指向的字符串追加到 dest 所指向的字符串的结尾

//演示 strcat() 函数的用法
char str1[100];
char str2[100]; gets(str1); //输入abcd
strcat(str1, "efg"); //或者也可以这样写
//gets(str2); //输入efg
//strcat(str1, str2);

打印出的结果是abcdefg

返回值:该函数返回一个指向最终的目标字符串 dest 的指针

C 库函数 - strcpy()

char *strcpy(char *dest, const char *src)

把 src 所指向的字符串复制到 dest

//演示 strcpy() 函数的用法
char str1[100];
char str2[100]; strcpy(str1, "abcd"); //用于字符串的输入
strcpy(str2, str1); //或字符串的拷贝

打印出的结果是abcd

返回值:该函数返回一个指向最终的目标字符串 dest 的指针

C 库函数 - strcmp()

int strcmp(const char *str1, const char *str2)

把 str1 所指向的字符串和 str2 所指向的字符串进行比较

//演示 strcpy() 函数的用法
char str1[100];
char str2[100];
int flg; //记录strcmp()的返回值 strcpy(str1, "abc"); //输入abc
strcpy(str2, "xyz"); //输入xyz flg=strcmp(str1, str2); //以ASCALL码比较 if(flg > 0)
printf("str1 > str2");
else if(flg < 0)
printf("str1 < str2");
else if(flg == 0)
printf("str1 = str2");

打印出的结果是str1 < str2

返回值:

  • 如果返回值 < 0,则表示 str1 小于 str2
  • 如果返回值 > 0,则表示 str2 小于 str1
  • 如果返回值 = 0,则表示 str1 等于 str2

C 库函数 - strlen()

size_t strlen(const char *str)

计算字符串 str 的长度,直到空结束字符,但不包括空结束字符

其中size_t 这是无符号整数类型,它是 sizeof 关键字的结果

//演示 strlen() 函数的用法
char str[100];
int l; //记录字符串长度 strcpy(str,"abcd"); //输入abcd
l=strlen(str);

打印出的结果是4

返回值:该函数返回字符串的长度

c库函数- memset()

void *memset(void *str, int c, size_t n)

复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符,通常用作批量赋值。

//演示 strlen() 函数的用法
char str[10]={'\0'};//全部初始化为0
int arr[10]={1,1,1,1,1,1,1,1,1,1};//全部初始化为1 memset(str,'a',5);//5*sizeof(char) //前5个值赋值为a
memset(str,'a',sizeof(str)-1); //所有值赋值为a //‘\0’结尾 memset(arr,0,5*sizeof(int)); //前5个值赋值为0;
memset(arr,0,sizeof(arr)); //所有值赋值为0; //注:第三个参数为赋值的字节数
//sizeof(数组名)为所有值,sizeof(类型)为一个值
//对数组来说,只能初始化为0,或者-1

打印出的结果是

//aaaaa
//aaaaaaaaa
//0 0 0 0 0 1 1 1 1 1
//0 0 0 0 0 0 0 0 0 0

返回值:该值返回一个指向存储区 str 的指针

扩展:

C 库函数 - memcpy()C 库函数memcpy()

void *memcpy(void *str1, const void *str2, size_t n)

从存储区 str2 复制 n 个字符到存储区 str1.

str2可从任意成员处开始,如memcpy(str1,str2+3, 6);// 从第 3 个字符开始复制,连续复制 6 个字符

返回值: 该函数返回一个指向目标存储区 str1 的指针

C 库函数 - memcmp(): C 库函数 - memcmp()

int memcmp(const void *str1, const void *str2, size_t n)

把存储区 str1 和存储区 str2 的前 n 个字节进行比较

返回值:

  • 如果返回值 < 0,则表示 str1 小于 str2
  • 如果返回值 > 0,则表示 str2 小于 str1
  • 如果返回值 = 0,则表示str1 等于 str2

以上为一些string.h头文件中常用的函数,资料来自菜鸟驿站C 标准库 - <string.h>

C语言常用字符串函数的更多相关文章

  1. C语言常用字符串函数总结

    ANSI C中有20多个用于处理字符串的函数: 注意:const 形参使用了const限定符,表示该函数不会改变传入的字符串.因为源字符串是不能更改的. strlen函数: 函数原型:unsigned ...

  2. php常用字符串函数小结

    php内置了98个字符串函数(除了基于正则表达式的函数,正则表达式在此不在讨论范围),能够处理字符串中能遇到的每一个方面内容,本文对常用字符串函数进行简单的小结,主要包含以下8部分:1.确定字符串长度 ...

  3. [转]MySQL常用Json函数和MySQL常用字符串函数

    MySQL常用Json函数:https://www.cnblogs.com/waterystone/p/5626098.html MySQL常用字符串函数:https://www.cnblogs.co ...

  4. js进阶js中支持正则的四个常用字符串函数(search march replace split)

    js进阶js中支持正则的四个常用字符串函数(search march replace split) 一.总结 代码中详细四个函数的用法 search march replace split 二.js进 ...

  5. Delphi常用字符串函数

    Delphi常用字符串函数   一.字符转换函数1.ord(input[i])返回字符表达式 input 左端起第 I 字符的ASCII 码值.2.CHAR()将ASCII 码转换为字符.如果没有输入 ...

  6. C语言入门(6)——C语言常用数学函数

    在编码过程中会经遇到数学运算,幸运的是C语言提供了非常丰富的数学函数库. 在数学中使用函数有时候书写可以省略括号,而C语言要求一定要加上括号,例如sin(pi/2)这种形式.在C语言的术语中,pi/2 ...

  7. MySQL最常用字符串函数

    字符串函数 是最常用的的一种函数,在一个具体应用中通常会综合几个甚至几类函数来实现相应的应用: 1.LOWER(column|str):将字符串参数值转换为全小写字母后返回 mysql> sel ...

  8. MySQL常用字符串函数

    字符串函数 是最常用的的一种函数,在一个具体应用中通常会综合几个甚至几类函数来实现相应的应用: 1.LOWER(column|str):将字符串参数值转换为全小写字母后返回 mysql> sel ...

  9. PHP 常用字符串函数整理

    PHP语言中的字符串函数也是一个比较易懂的知识.今天我们就为大家总结了将近12种PHP字符串函数,希望对又需要的朋友有所帮助,增加读者朋友的PHP知识库. 1.查找字符位置函数 strpos($str ...

随机推荐

  1. Specified cast is not valid(C#) 引发的思考(装箱,拆箱本质)

    没有很华丽的语言,直接拿代码说事情把. 这段代码,会报错吗?  结论:当然不会 这段代码会报错了.原因是为啥? 这里面的水比较深.也要提醒各位写代码的适合要引起注意.异常:System.Invalid ...

  2. docker学习笔记(2)——docker常用命令

    参考博客: 1.官网教程:https://docs.docker.com/reference/ 可以一边敲命令一边对照官网学习,也可以通过阅读docker --help来学习 2..视频教程:http ...

  3. JAVA 猜拳游戏

    JAVA 猜拳游戏 题目:通过控制台方式实现一个人机对战的猜拳游戏 用户通过输入(0.石头子 1.剪刀 2.布),机器随机生成(0.石头子 1.剪刀 2.布) 要求: 能打印玩家的对局信息,胜利的次数 ...

  4. 使用Three.js实现神奇的3D文字悬浮效果

    声明:本文涉及图文和模型素材仅用于个人学习.研究和欣赏,请勿二次修改.非法传播.转载.出版.商用.及进行其他获利行为. 背景 在 Three.js Journey 课程示例中,提供了一个使用 Thre ...

  5. linux 中 /dev/null和/dev/zero的作用以及区别

    在类Unix操作系统中,设备节点并不一定要对应物理设备.没有这种对应关系的设备被称之为伪设备.操作系统运用了它们实现多种多样的功能,/dev/null和/dev/zero就是这样的设备,类似的还有/d ...

  6. 微信小程序获取当前的时间戳

    js文件中进行计算var timestamp = Date.parse(new Date()); timestamp = timestamp / 1000; console.log(timestamp ...

  7. php 23种设计模型 - 访问者模式

    访问者模式是一种行为型模式,访问者表示一个作用于某对象结构中各元素的操作.它可以在不修改各元素类的前提下定义作用于这些元素的新操作,即动态的增加具体访问者角色. 访问者模式利用了双重分派.先将访问者传 ...

  8. PhpStorm中绘画UML

    IDE支持 在Plugins中 安装PlantUML integration插件 到http://www.graphviz.org/网站下载graphviz.exe并安装(这个软件可以支持更多的UML ...

  9. 浅析XML

    概述XML文档结构 每个XML文档都分为两部分:序言(Prolog)和文档元素(或文档节点) 例子:写一段XML然后简单分析一下 <?xml version="1.0" en ...

  10. 04 变量 变量作用域 常量final 变量的命名规范

    变量 变量是什么:就是可以变化的量! Java是一种强类型语言,每个变量都必须声明其类型. Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域. 注意事项: 每个变量都有类型,类 ...