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. /etc/fstab文件的详解

    转至:https://blog.csdn.net/youmatterhsp/article/details/83933158 一./etc/fstab文件的作用 磁盘被手动挂载之后都必须把挂载信息写入 ...

  2. omnet++:官方文档翻译总结(四)

    学习翻译自:Adding Statistics Collection - OMNeT++ Technical Articles Part 5 - Adding Statistics Collectio ...

  3. Python:Scrapy(三) 进阶:额外的一些类ItemLoader与CrawlSpider,使用原理及总结

    学习自:Python Scrapy 爬虫框架实例(一) - Blue·Sky - 博客园 这一节是对前两节内容的补充,涉及内容为一些额外的类与方法,来对原代码进行改进 原代码:这里并没有用前两节的代码 ...

  4. matplotlib(终章)

    今日内容概要 matplotlib实际案例演示 各种图形的总结 数据清洗(简单) 数据清洗的案例 今日内容详细 matplotlib实际案例演示 # 2.绘制每年电影上映数量曲线图 首先载入模块 im ...

  5. selenium+python操作浏览器

    前面已经把环境搭建好了,下面我们就正式学习selenium的webdriver框架.本篇主要讲如何用Python调用webdriver框架的API,对浏览器做一些基本的操作,如打开.前进.后退.刷新. ...

  6. react的”Hello World !“

    本文主要简述react的开始使用 1.引入js文件 <!-- 1.核心文件 --> <script crossorigin src="https://unpkg.com/r ...

  7. Vue3+ElementPlus的一套开源前台+后台管理模板

    Vue-Element-Faster 基于最新版vue.js 3.x与element-plus2.x实现的一套前台展示系统.后台管理系统模板,自带权限管理模块. API接口基于SpringBoot2. ...

  8. CVE-2018-12613phpMyAdmin 后台文件包含漏洞分析

    一.    漏洞背景 phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库.借由此Web接口可以成 ...

  9. Mybatis工具类(自动提交事务)

    public class MybatisUtils { private static SqlSessionFactory sqlSessionFactory; static { try { //获取工 ...

  10. Objects.equals有坑

    前言 最近review别人代码的时候,发现有个同事,在某个业务场景下,使用Objects.equals方法判断两个值相等时,返回了跟预期不一致的结果,引起了我的兴趣. 原本以为判断结果会返回true的 ...