小白:String函数总结
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 chars,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函数总结的更多相关文章
- Python 常用string函数
Python 常用string函数 字符串中字符大小写的变换 1. str.lower() //小写>>> 'SkatE'.lower()'skate' 2. str.upper ...
- string函数分析
string函数分析string函数包含在string.c文件中,经常被C文件使用.1. strcpy函数原型: char* strcpy(char* str1,char* str2);函数功能: 把 ...
- PHP String 函数
[http://www.w3school.com.cn/php/php_ref_string.asp ] PHP String 简介 String 字符串函数允许您对字符串进行操作. 安装 Strin ...
- lua string函数
lua的string函数: 参数中的index从1开始,负数的意义是从后开始往前数,比如-1代表最后一个字母 对于string类型的值,可以使用OO的方式处理,如string.byte(s.i)可以被 ...
- PHP 5 String 函数
PHP 5 String 函数 PHP String 函数是 PHP 核心的组成部分.无需安装即可使用这些函数. 函数 描述 addcslashes() 返回在指定的字符前添加反斜杠的字符串. add ...
- c++string函数详解
string,一个极为好用了函数,学好了这些函数,在模拟以及字符串问题上,回节省很多很多的写代码时间,代码复杂度以及错误率,那么这一类函数都有那些功能呢?我们来逐一介绍(让你大吃一惊,还有这种操作?) ...
- 常用string函数分析
string函数分析string函数包含在string.c文件中,经常被C文件使用.1. strcpy函数原型: char* strcpy(char* str1,char* str2);函数功能: 把 ...
- c++:string函数
string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化此外,string类还支持 ...
- C string 函数大全
PS:本文包含了大部分strings函数的说明,并附带举例说明.本来想自己整理一下的,发现已经有前辈整理过了,就转了过来.修改了原文一些源码的问题,主要是用char *字义字符串的问题,导致程序运行时 ...
随机推荐
- 跟我一起学.NetCore之Swagger让前后端不再烦恼及界面自定义
前言 随着前后端分离开发模式的流行,接口对接.联调成为常事,前端同事会经常问:我需要调哪个接口?这个接口数据格式是啥?条件都传啥? 对于一些紧急接口可能会采取沟通对接,然后补文档,其他的都会回一句:看 ...
- HTTP 的前世今生,那些不为人知的秘密
每个时代,都不会亏待会学习的人. 大家好,我是 yes. HTTP 协议在当今的互联网可谓是随处可见,一直默默的在背后支持着网络世界的运行,对于我们程序员来说 HTTP 更是熟悉不过. 平日里我们都说 ...
- 基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中。
react-amap 这是一个基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中. 文档实例预览: Github Web | Gitee Web 特性 ️ 自动加载高德地 ...
- Python-TypeError: object() takes no parameters
Error: TypeError: object() takes no parameters Where? 使用自定义类的时候,实例类的时候传递参数,提示这个错误 Why? 因为类实例的时候,并不需要 ...
- 使用maven整合mybatis时出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
分析原因是mybatis的映射文件的问题,首先进行分析排查: 1.检查mapper接口和对应的xml文件的包名是否对应 2.检查xml文件的namespace与mapper接口的包名是否对应 3.检查 ...
- 剑指Offer(一):二维数组中的查找
一.前言 刷题平台:牛客网 二.题目 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整 ...
- VS Code 搭建编写Shell环境(WSL)
安装过程 Win10开启WSL,方法略 安装VSCode,方法略 安装语法提示插件:shellman 安装格式化插件:shell-format(右键 -> 格式化文档(Ctrl + Alt + ...
- 启动VNC Shell扩展
下载source files - 18.3 Kb Introduction 我们使用RealVNC来远程控制我们的网络中的pc机,VNC是一个伟大的产品,但如果不记住计算机名称,它可以是乏味的,在网络 ...
- 从实体框架核心开始:构建一个ASP。NET Core应用程序与Web API和代码优先开发
下载StudentApplication.Web.zip - 599.5 KB 下载StudentApplication.API.zip - 11.5 KB 介绍 在上一篇文章中,我们了解了实体框架的 ...
- Oracle数据库中的大对象(LOB)数据类型介绍
一.LOB数据类型的介绍 大对象(LOB)数据类型允许我们保存和操作非结构化和半结构化数据,如文档.图形图像.视频片段.声音文件和XML文件等.DMBS_LOB 包被设计用于操作 LOB 数据类型.从 ...