string.h函数:

1.strlen 数出字符串存在多少字符;

2.strcmp 比较两个字符串,若相等返回0不相等返回1

3.strcpy(char *restrict dst,const char *restrict src);

//以上为strcpy函数的原型声明

作用:将dst字符串用src字符串覆盖,并且返回dst

restrict:表明dst不可与src不重叠

操作如下:

char dst=(char)malloc(strlen(src)*sizeof(char)+1);

strcpy(dst,src);

{(补充:malloc-->需要调用#include<strlib.h>,并且需要用指针变量来储存malloc返回的值)

malloc是向计算机要一块空间,返回的类型为void

举例:如果需要一个N个int的空间,我们需要使用malloc动态内存分配

操作如下:

include<stdio.h>

include<stdlib.h>

int main(void){

int N,p;

scanf("%d",&N);

p=(int
)malloc(N*sizeof(int));-->是向计算机要了一块N个int

的空间

free(p);-->释放空间内存

}

}

4.strcat(char*restrict s1,const char *restrict s2);

//以上是strcat函数的原型声明

作用:将s2拷贝到s1的后面,接成一个长字符串 然后返回s1(s1必须有足够的空间)

5.strchr(const chars,int c); //返回一个指针

strrchr(const char
s,int c);

//以上为函数的原型声明

作用:strchr是从左边开始查找第一个为c的字符

strrchr是从右边开始查找第一个为c的字符

返回NULL表示没有找到

//使用小技巧:

(1).寻找第二个重复的字符:

char s[]="hello";

char *p=strchr(s,'l');//此时输出p会得到llo。

p=strchr(p+1,'l'); //此时p指向了llo让他+1指向lo,再从lo里找到l。

(2).将字符串的一部分提出来,放在另外一处去

char s[]="hello";

char *p=strchr(s,'l');

char t=(char)malloc(strlen(p)+1);

strcpy(t,p);

printf("%s",t);

free(t);

//上面操作是将字符串s的“llo”提取出来放在了指针t的位置;

(3).得到一串字符串的前几个字符

char s[]="hello";

char p=strchr(s,'l');

char c=
p;//此时*p指向了数组s的第一个l的位置

*p='\0';//让第一个l的位置变成了\0 则s数组就变成了he\0lo\0;

char t=(char)malloc(strlen(s)+1);

strcpy(t,s);//用新的指针来储存改变后的字符串s

printf("%s\n",t);

p=c;//还原p所指向的数组s的位置;

free(t);

6.char *strstr(const char *s1,const char *s2)

char *strcasestr(const char *s1,const char *s2)

//以上为函数的原型声明

作用为:第一个为在字符串中寻找字符串,第二个是在字符串中寻找字符串的过程中忽略大小写。

补充:对于strcpy和strcat有更安全的版本

char *strncpy(char *restrict dst,const char *restrict src,size_t n); n-->表示可以替换的最大字符数量

char *strncat(char *restrict s1,const char *restrict s2,size_t n); n-->表示可以后缀的最大字符数量

其次对于 int strncmp(const chars1,const chars2,size_t n);

n-->表示依次判断字符串s1前n个字符是否为a,b,c...,n

小白:String函数总结的更多相关文章

  1. Python 常用string函数

    Python 常用string函数 字符串中字符大小写的变换 1. str.lower()   //小写>>> 'SkatE'.lower()'skate' 2. str.upper ...

  2. string函数分析

    string函数分析string函数包含在string.c文件中,经常被C文件使用.1. strcpy函数原型: char* strcpy(char* str1,char* str2);函数功能: 把 ...

  3. PHP String 函数

    [http://www.w3school.com.cn/php/php_ref_string.asp ] PHP String 简介 String 字符串函数允许您对字符串进行操作. 安装 Strin ...

  4. lua string函数

    lua的string函数: 参数中的index从1开始,负数的意义是从后开始往前数,比如-1代表最后一个字母 对于string类型的值,可以使用OO的方式处理,如string.byte(s.i)可以被 ...

  5. PHP 5 String 函数

    PHP 5 String 函数 PHP String 函数是 PHP 核心的组成部分.无需安装即可使用这些函数. 函数 描述 addcslashes() 返回在指定的字符前添加反斜杠的字符串. add ...

  6. c++string函数详解

    string,一个极为好用了函数,学好了这些函数,在模拟以及字符串问题上,回节省很多很多的写代码时间,代码复杂度以及错误率,那么这一类函数都有那些功能呢?我们来逐一介绍(让你大吃一惊,还有这种操作?) ...

  7. 常用string函数分析

    string函数分析string函数包含在string.c文件中,经常被C文件使用.1. strcpy函数原型: char* strcpy(char* str1,char* str2);函数功能: 把 ...

  8. c++:string函数

    string类的构造函数:string(const char *s);    //用c字符串s初始化string(int n,char c);     //用n个字符c初始化此外,string类还支持 ...

  9. C string 函数大全

    PS:本文包含了大部分strings函数的说明,并附带举例说明.本来想自己整理一下的,发现已经有前辈整理过了,就转了过来.修改了原文一些源码的问题,主要是用char *字义字符串的问题,导致程序运行时 ...

随机推荐

  1. python中不需要函数重载的原因

    函数重载主要是为了解决两个问题: 1.可变参数类型 2.可变参数个数 并且函数重载一个基本的设计原则是,仅仅当两个函数除了参数类型和参数个数不同以外,其功能是完全相同的,此时才使用函数重载,如果两个函 ...

  2. 系统模块sys的常用方法

    sys.argv参数 sys.argv  等价于是一个列表,argv[0] 代表当前脚本程序路径名,可以通过在外部获取多个参数传递给脚本程序执行,按照列表的取值方式第二个数据就是sys.argv[1] ...

  3. Python-字符编码-Unicode UTF-8

    什么是字符编码? --世界上有很多国家,每个国家都有自己独特的语言,所以在计算机普及的当今世界, 每个国家都有自己的字符编码,本国的软件运行在其他国家的机器上,会出现乱码, 有utf-8,gbk等各种 ...

  4. CS:APP配套实验 Data Lab

    刚刚完成注册博客,想写一篇随笔,方便以后自己回顾.如果恰好也能帮助到你,是我的荣幸. 这次随笔是记载我的计算机系统(CS:APP,Computer Systems:A Programer's Pers ...

  5. 007 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 01 Java标识符

    007 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 01 Java标识符 Java变量与常量主要内容 Java变量与常量主要内容如下,主要是对以下内容的学习,没 ...

  6. Linux系统如何在离线环境或内网环境安装部署Docker服务和其他服务

    如何在离线环境或纯内网环境的Linux机器上安装部署Docker服务或其他服务.本次我们以Docker服务和Ansible服务为例. 获取指定服务的所有rpm包 保证要获取rpm包的机器能够上网. 本 ...

  7. shell-变量的数值运算-bc-typeset-中括号等方法介绍

    1. bc命令的用法: bc是unix下的计算器,它也可以用在命令行下面:    例:给自变量i加1 i=2 i=`echo $i + 1|bc` --------效率低     因为bc支持科学计算 ...

  8. LR之Oracle 2tier协议录制Oracle脚本

    在一次测试中,需用到sql去查询Oracle数据,并去使用改数据时,查阅各种资料终于实现LoadRunner对Oracle数据库进行操作,分享给大家,也与大家共同进步~   同时也可用Loadrunn ...

  9. 多测师全方位面试题腾讯 _自动化面试题_高级讲师肖sir

    作答注意:候选人可以两题都做,也可以两题任选一题做即可. 笔试题一:1.查询 https://www.newsmth.net/nForum/#!board/PieLove2.获取发贴时间是2020年8 ...

  10. 【Jenkins】远程调用jenkins进行构建方式!

    前提:jenkins支持远程调用(具体设置自行百度)1.在我的个人中心--configure--API TOKEN--如果没有,则添加一个token,并生成,再复制并记录下来2.在你的job上面加上你 ...