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. NLP常见任务

    借助BERT论文, 梳理下自然语言处理当前常见的任务. NLP任务 根据判断主题的级别, 将所有的NLP任务分为两种类型: token-level task: token级别的任务. 如完形填空(Cl ...

  2. 论文阅读笔记: Multi-Perspective Sentence Similarity Modeling with Convolution Neural Networks

    论文概况 Multi-Perspective Sentence Similarity Modeling with Convolution Neural Networks是处理比较两个句子相似度的问题, ...

  3. 如何下载jmeter旧版本

    推荐先用旧版本做好测试基本操作,因为高版本不适合做压力测试,需要证书,有点麻烦. 1.百度或直接打开jmeter官网:https://jmeter.apache.org/ 2.向下拖到Archives ...

  4. Kafka处理请求的全流程分析

    大家好,我是 yes. 这是我的第三篇Kafka源码分析文章,前两篇讲了日志段的读写和二分算法在kafka索引上的应用 今天来讲讲 Kafka Broker端处理请求的全流程,剖析下底层的网络通信是如 ...

  5. Linux系统编程—管道

    ▋****1. 管道的概念 管道,又名「无名管理」,或「匿名管道」,管道是一种非常基本,也是使用非常频繁的IPC方式. 1.1 管道本质 管道的本质也是一种文件,不过是伪文件,实际上是一块内核缓冲区, ...

  6. fastjson配置序列化过滤转换

    @Configuration@EnableWebMvcpublic class WebConfig implements WebMvcConfigurer { @Override public voi ...

  7. 多测师讲解自动化测试 _RF连接数据库_高级讲师肖sir

    RF连接数据库:1.Connect To Database(连接数据库)2.Table Must Exist(表必须存在)3.Check If Exists In Database(查询某条件是否存在 ...

  8. 多测试_常用linux命令_002

    linux 介绍 常用的操作系统(os): windows .dos.android.ios.unix.linux linux系统:是一个免费.开源的操作系统 支持多cpu,多用户,多线程的操作系统, ...

  9. ttl转以太网

    ttl转以太网 ttl转以太网ZLSN3007S是实现TTL电平串口转以太网的"超级网口",产品自带网络变压器和RJ45网口,可以方便实现单片机.各类TTL电平串口设备的联网.首先 ...

  10. 安装虚拟机V15.5及LinuxCentOS6简易步骤

    1.下载虚拟机和Linux系统: (1)虚拟机下载地址(失效请自行百度):http://www.downza.cn/soft/74728.html (2)Linux系统下载地址(失效请自行百度):ht ...