C++中字符串的相关函数及其使用

C/C++常用的字符串函数 字符串函数(String processing function)也叫字符串处理函数,指的是编程语言中用来进行字符串处理的函数,需要调用头文件include。在C/C++编程中经常会遇到字符串的处理,比如路径的切割、信号的判断(字符串比较),以及字符串大小的计算,熟练掌握常用的字符串函数,了解其可以实现的功能,对于做项目大有裨益。 阅读详情

目录

1.字符串转整数--stoi()

2.字符串转整数--atoi()

3.数字转字符串--to_string()

 4.字符串截取--substr()

5.常用函数--size、length、append、find、replace、erase、insert


1.字符串转整数--stoi()

stoi()函数原型:

int stoi(const string& str, size_t* pos = 0, int base = 10);

其中,str是需要转换的字符(串),pos是一个指向size_t类型的指针,用于存储转换过程中第一个无法转换的字符的位置,base表示要转换的进制数,默认为10进制。

stoi()函数从字符串的开头开始读取数字字符,直到遇到第一个非数字字符为止,然后将读取到的数字字符转换为整数类型的数字。如果字符串的开头不是数字字符,则返回0.

例如:

结果都为:

如:

其结果为:

注意:如果字符串中包含非数字字符,stoi()函数会抛出invalid_argument异常

注意:如果转换后的结果超出了整数类型的范围,stoi()函数会抛出out of range异常。

2.字符串转整数--atoi()

int atoi(const char* str);

其中,str是需要转换的字符串,必须是以null结尾的字符串。

3.数字转字符串--to_string()

string to_string(int val);
string to_string(long val);
string to_string(long long val);
string to_string(unsigned val);
string to_string(unsigned long val);
string to_string(unsigned long long val);
string to_string(float val);
string to_string(double val);
string to_string(long double val);

其中,val是需要转换的数字。

 4.字符串截取--substr()

void solve(){
	/*函数原型:
	std::string substr (size_t pos, size_t len) const;
	pos是开始的位置,len是截取字符串的长度
	*/
    string s="1233456789111";
    cout<<s.substr(0,3);//从0位置开始,截取3个字符
}

5.常用函数--size、length、append、find、replace、erase、insert

void solve(){
	string str;
	string s="~~~abcdefg~~~";
	getline(cin,str);//读取一行
	cout<<"str.size---"<<str.size()<<endl;//字符串的长度
	cout<<"str.length---"<<str.length()<<endl;//字符串的长度
	cout<<"str.append(s)---"<<str.append("******Hello,C + + !******")<<endl;//追加字符串
	cout<<"str.find---"<<str.find("C + +")<<endl;//查找字串
	cout<<"operate+---"<<str+s<<endl;//连接两个字符串
	cout<<"replace(pos,n,s)---"<<str.replace(0,10,s)<<endl;//删除从pos开始的n个字符,然后在 pos 处插入串 s。
	cout<<"erase(pos,n)---"<<str.erase(0,10)<<endl;//删除从 pos 开始的 n 个字符。
	cout<<"append(s,pos,n)---"<<str.append(s,3,7)<<endl;//将字符串 s 中,从 pos 开始的 n 个字符连接到当前字符串结尾。
	cout<<"insert(pos,s)---"<<str.insert(0,"123")<<endl;//在 pos 位置插入字符串 s。
	
}

运行结果如下:

c++中字符串操作函数合集 文章介绍了c++中常用的字符串操作函数及其用法 阅读详情

相关推荐

C++ ctime,字符串相关函数等内部函数

测试一个代码的运行时间 clock_t start=clock(); ....代码 clock_t end=clock(); cout<<(double)(end-start)/CLOCKS_PER_SEC<<endl;

honey_babay的博客 236

C/C++ 字符串相关函数:从入门到精通,一篇搞定!

拷贝字符串在古老的编程世界里,有一位年轻的冒险者,他手持 C/C++ 的宝剑,踏上了探索字符串奥秘的征途。在一片神秘的代码森林中,他遇到了许多难题,而字符串相关函数,就像是隐藏在森林深处的宝藏,等待着他去发掘。

zhen_yr19的博客 1108

C++字符串的相关库函数

字符串:是一串文字和符号的序列。其基本组成元素是单个字符(char),字符串长度可变。字符串长度不包括分解符的引号,也不包括串结束符’\0’。 空串:长度为0,除串结束符外,不包含任何其他字符。 空白串:长度不为0,除串结束符外,包含的其他字符均为空格。 字符串相关的库函数 1、strcpy-----字符串复制:将string2的内容复制到string1中 int strcpy(char *string1, char *string2) 2、strncpy-----字符串部分复制:将string2的前n个

q793145253的博客 1313

C++中有关字符字符串的函数总结

replace(left,length,str2) 替换掉str1中从left开始的length长度的字符串为str2,多出str2的长度则删除str1中对应多出的字符。strpbrk返回一个指针,指向str2中任意一个字符第一次在str1中出现的位置,不存在则返回NULL。strrchr是查找一个字符在字符串中首次的位置并返回它的指针。strcspn是返回字符串str1中连续n个不含字符串str2中字符的字符数。strspn是返回str1中第一个不是str2中存在的字符的下标。

m0_63667664的博客 2397

c++字符串的相关处理函数

atoi 将string字符串转换为int类型,只能转换为十进制;atoi函数不会对string字符串进行范围检查[-2147483648,2147483647],超过这个界限,不会报错,只会进行相应的转换,遇到非法字符会停止,不会报错;头文件为cstdlib string s="111111"; cout<<atoi(s.c_str())<<endl; sto...

HurryRabbit的博客 563

Pinocchio 安装教程|机器人学的必备库

安装pinocchio,不要安装pip3 install pinocchio!

darcsdn 1663

c++中字符串相关的函数及其使用场景

在本文中,我将介绍C++中常用的字符串函数stoi()、atoi()、to_string()等等,并提供一些实用的代码案例和使用建议。不管说是平时使用还是说做算法题时,都可以很好的提高我们编程的效率。在最后,还准备了一些和字符串函数相关的算法题目,这也是平时比较常见的算法题。

qq_46901210的博客 4340

从原理到调试:手把手教你用Matlab解码互补格雷码与相移码(附数据与常见错误排查)

本文详细介绍了如何使用Matlab解码互补格雷码与相移码,涵盖从原理到调试的全过程。通过实际案例和代码示例,帮助读者掌握结构光三维重建中的相位解包裹技术,并提供了常见错误排查与优化建议,提升解码效率与准确性。

weixin_29090917的博客 221

c++ 字符串相关函数

c: 1. 字符长度 strlen(str); //从第一个字符计算到0x00机‘\0’ sizeof(str); 2. 字符串复制 头文件:#include &lt;string.h&gt; 和 #include &lt;stdio.h&gt; 原型声明:char *strcpy(char* dest, const char *src); 函数原型:char *strncpy(ch...

yangyaokun0220的博客 2423

Gamit 数据处理,相关的文件配置

一、处理前准备 1、在主文件夹内新建test项目文件,项目内新建brdc、igs和rinex三个文件夹,分别存放广播星历,精密星历几观测值文件,所用的命令分别为sh_get_nav、sh_get_orbits和sh_get_rinex (若文件为.Z,用gunzip命令解压,若仍为d,用命令sh_crx2rnx -f 命令解压为o文件) 2、进入test项目文件夹,链接tables,运行 sh_setup -yr 2015 -apr itrf08_com.apr 3、生成station.info文件。 将t

CodeDoraemon的博客 3377

BUCK电路的大信号模型与小信号模型推导

推导开关电源信号模型的核心是将非线性开关过程线性化,常用。如需具体拓扑的推导细节,可进一步说明!

创新改变世界! 1179

C++字符串操作及相关函数汇总

【代码】C++字符串操作及相关函数汇总。

wmq77777的博客 729

PTA编程—币值转换

我对于这个题的主要思想就是把九位数分三块,对每块进行处理后,再合并。有了这个思想就开始写代码,后面就是哪有洞补哪,哪个测试用例没通过就对其特殊处理…。反正最后测试用例全通过了。 #include<iostream> #include <string> #include <algorithm> using namespace std; char a[10]={'a','b','c','d','e','f','g','h','i','j'}; //既然题目说了最多9位

uyo9ko的博客 991

C++-string字符串相关函数与应用

C+±string字符串相关函数与应用

qq_37184702的博客 206

为什么你的SiC MOSFET仿真不准?可能是离子注入的‘沟道效应’在捣鬼(Silvaco BCA模块详解)

本文深入分析了SiC MOSFET仿真中离子注入沟道效应的关键影响,揭示了Silvaco BCA模块在模拟SiC晶向和角度参数时的核心设置要点。通过详细解析晶圆偏切与注入角度的等效关系,提供优化MOSFET沟道区注入仿真的五步实战方法,帮助工程师将阈值电压仿真误差从26%降低到5%以内。

weixin_26789847的博客 410

银河麒麟v10-arm版离线安装Portainer

银河麒麟v10-arm版离线安装Portainer

q_hsolucky的博客 3052

C++字符串相关函数

C++ Strings(字符串) -------------------------------------------------------------------------------- 构造函数(Constructors) 语法: string(); string( size_type length, char ch ); string( const char *str

cvan的小窝 2222

nvidia系列教程-AGX-Orin linux源码下载编译

NVIDIA AGX Orin 是一款高性能的嵌入式计算平台,广泛应用于人工智能、自动驾驶、机器人等领域。为 AGX Orin 编译定制的 Linux 内核,可以更好地适应特定应用需求,增强系统的灵活性。本文将详细介绍如何下载、配置和编译适用于 AGX Orin 的 Linux 内核源码。本文介绍了如何为 NVIDIA AGX Orin 平台下载、配置和编译定制的 Linux 内核源码。通过编译和部署定制内核,您可以更好地控制系统的行为,并根据特定应用需求进行优化。

flypig has a dream! 1283

【c++】字符串相关函数的实现

strcpy: #include<assert.h> char* strcpy(char* to,const char* from) { //1.检测to和from是否为空 //断言:当表达式的结果为0时,程序停止,为1时,继续执行下面的语句 assert(to != nullptr && from != nullptr); //2.保存to原先的值 char...

qq_39249403的博客 197

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

c++字符串相关函数

`replace(pos, len, "new")`:从位置`pos`开始,替换长度为`len`的部分为"new"。` 将`str1`和`str2`连接后赋值给`str`。- `substr(pos, len)`:从位置`pos`开始获取长度为`len`的子串。- `erase(pos, len)`:从位置`pos`开始删除长度为`len`的部分。- `insert(pos, "new")`:在位置`pos`插入子串"new"。- `size()` 或 `length()`:返回字符串的长度。

2302_81229447的博客 245

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

C++字符串相关操作函数

#include using namespace std; /*字符串相关操作函数:strcat、strcpy、strcmp、strupr、strlwr、strlen*/ void main() { char str0[100] = "This is a C++ program!"; char str1[10] = "So what!"; //strcat 字符串连接函数 strcat(

九月飞雪的博客 587

C++中对字符串的各种相关处理函数

一、 find()函数:查找一个字符串是否包含特定另一个字符串 find()函数带有一个参数,两个参数和三个参数的情况。 find函数带一个参数,就是直接查找; find函数带有两个参数,就是在被查找的字符串的某个特定位置开始查找; find函数带有三个参数,就是在被查找的字符串的某个特定位置开始查找:查找字符串的前n个字符组成的字符串! ———————————————— #in...

Sun Sun day的博客 504

c++中字符串的相关函数 收集

void *memset(void *dest, int c, size_t count); 将dest前面count个字符置为字符c. 返回dest的值. void *memmove(void *dest, const void *src, size_t count); 从src复制count字节的字符到dest. 如果src和dest出现重叠, 函数会自动处理. 返回dest的

zhghost的专栏 1083

C++ 字符串相关函数

<转>自:http://zhidao.baidu.com/question/173202165.html 首先就是memcpy表头文件: #include <string.h>定义函数: void *memcpy(void *dest, const void *src, size_t n)函数说明: memcpy()用来拷贝src所指的内存内容前n个字节到dest所指的内...

weixin_30849403的博客 101

【C++】中字符串相关函数用法详解

【C++】中字符串相关函数用法详解

Zerone_yin的博客 560
上一篇: 贪心算法
下一篇: KMP(字符匹配)
01star️
博客等级 码龄3年 96粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值