C++中的字符串类型

标准C++ 字符串 C++中字符串类型 阅读详情

C++中字符串的两种表示方法:

1。C 风格的字符串

2。标准 C++引入的string 类类型

 

C风格的例子:(计算字符串的长度)

  1 #include<iostream>
  2 #include<string>
  3 #include<cstring>
  4 using namespace std;
  5 int main()
  6 {
  7     const char *str = "The expense of spirit!";
  8     int len = 0;
  9     const char *p = str;
 10     while(*p++){
 11         ++len;
 12     }
 13     cout << len << ": " << str << endl;
 14
 15     return 0;
 16 }
编译:$ g++ string.c

运行:$ ./a.out

结果:22: The expense of spirit!

 

 

C++字符串类型的例子:

  1 #include<string>
  2 #include<iostream>
  3 using namespace std;
  4 int main()
  5 {
  6     string str("The expense of spirit!");//第一种构造函数的形式
  7     string str2;//第二种构造函数的形式
  8     if(!str2.size())
  9         cout << "str2 is null/n";
 10     if(str.empty())
 11         cout << "str is null/n";
 12     else
 13         cout << "The size of /""
 14             << str
 15             << "/" is " << str.size()
 16             << endl;
 17
 18     //将str初始化给str3
 19     string str3( str );
 20     cout << "str3 :" << str3 << endl;
 21     cout << "========================/n";
 22     string s1("Hello, ");
 23     string s2("World!/n");
 24     string s3 = s1 + s2;
 25     cout << "s3: " << s3;
 26     return 0;
 27 }
编译:$g++ string_C++.c

运行:$./a.out

结果:

str2 is null
The size of "The expense of spirit!" is 22
str3 :The expense of spirit!
========================
s3: Hello, World!

 

 

下面是C风格和C++风格混用的例子:

  1 #include<iostream>
  2 #include<string>
  3 #include<cstring>
  4 using namespace std;
  5 int main()
  6 {
  7     const char *pc = ", ";
  8     string s1("hello");
  9     string s2("world");
 10
 11     string s3 = s1 + pc + s2 + "/n";
 12     cout << "s3 = s1 + pc + s2 + /"//n/" :"
 13         << s3;
 14     //可以将一个C风格的字符串赋值给一个string对象,但是反向的转换不能自动执行
 15     string str;
 16     const char *p = "a character array";
 17     str = p;
 18     cout << str << endl;
 19     //char *p1 = str;//这是不合法的赋值。
 20     //但是可以显式的调用c_str();
 21     const char *p1 = str.c_str(); //因为c_str()返回的是常量数组
 22     cout << p1 << endl;
 23     return 0;
 24 }
编译:$g++ string_C++_C.c

运行:./a.out

结果:

s3 = s1 + pc + s2 + "/n" :hello, world
a character array
a character array

 

下面是C++中string类型访问单个字符操作的例子:

  1 #include<iostream>
  2 #include<string>
  3 using namespace std;
  4 int main()
  5 {
  6     string str("fa.disney.com");
  7     int size = str.size();
  8
  9     for(int i = 0; i < size; ++i){
 10         if( str[i] == '.' )
 11             str[i] = '_';
 12     }
 13     cout << str << endl;
 14     return 0;
 15 } 


编译:$g++ string_char.c

运行:$./a.out

结果:

fa_disney_com

 

c++中的char类型和字符串的运算 在C++中,char类型实际上是一种,只不过它通常用于表示。char类型的变量在内存中存储的是字符对应的ASCII值,例如,以此类推。当我们char。例如,如果有一个char变量k,其值为’1’,当执行k++时,k的ASCII值会增加1,变成50,对应的字符就是’2’。 阅读详情

相关推荐

[C语言字符串 cpp]——深入解析C语言中的字符串类型

在C语言中,字符串(string)是一种非常重要的数据类型,也是程序员经常用到的数据类型之一。但是,字符串与其它数据类型不同,它本身并没有一个明确的数据类型名称,它实际上是由字符数组(char array)实现的。在这个例子中,我们声明了一个名为"greeting"的字符数组,它的大小为6个字节。注意,最后一个字节必须是空字符(‘\0’),以表示字符串的结束。字符串在C语言中特别重要,我们需要深入了解它的实现和使用方法。除了手动创建字符串,C语言还提供了一些内置的字符串操作函数。

2301_79330511的博客 234

c++字符、字符串详解

字符的ASCCI码是0至127的整数,字符与整数比较的规则是把字符的ASCCI码和整数进行大小比较,例如:'a'127的结果是假,而97

浪子回头 7962

使用boost::describe模块实现C++中的字符串到枚举类型的转换

在本文中,我们将介绍如何使用Boost的describe模块来实现字符串到枚举类型的转换,并给出相应的测试程序。然后,我们使用boost::describe::enum_value函数将colorStr转换为对应的Color枚举值。接下来,我们将给出一个示例来演示如何使用describe模块实现字符串到枚举类型的转换。有了映射规则之后,我们可以使用describe模块中的函数来进行字符串到枚举类型的转换。通过使用Boost的describe模块,我们可以方便地实现字符串到枚举类型的转换。

TechWhiz的博客 917

C++ 字符串

C++ 字符串 C++ 提供了以下两种类型的字符串表示形式: C 风格字符串 C++ 引入的 string 类类型 C++ 大大增强了对字符串的支持,除了可以使用C风格的字符串,还可以使用内置的 string 类。string 类处理起字符串来会方便很多,完全可以代替C语言中的字符数组或字符串指针。 C 风格字符串 C 风格的字符串起源于 C 语言,并在 C++ 中继续得到支持。字符串实际上是使用 null 字符 '\0' 终止的一维字符数组。因此,一个以 null 结尾的字符串,包..

cnds123的专栏 2万+

距离多普勒谱(RD谱)绘制方法及理解

RD谱是信号处理领域常用的图形。原始信号往往是一维时域序列,如何将其二维化,并进行变换生成RD谱呢?由于刚刚接触,查阅了网络上、老师手里的资料,发现RD谱的绘制方法并不统一,有些存在一定问题。在此,将心得体会记录下来。

mddh_123的博客 3万+

基于BQ24610的24V电池充电板

转自我的博客 本文的主要目的在于传播基本的阅读datasheet的能力,以及PCB设计需要注意的基本问题。 本次需要设计的是24V动力锂电池充电电路。 原理图设计 参考官方参考电路 为了快速设计电路,自然是参考官方参考电路,选择Typical Application。 做细微的参数调整 由于我们的需求是给24V的电池充电,所以需要稍微修改一下原理图,接下来需...

greedyhao的博客 1万+

C++字符串的不同存放类型 (string/char[])

C++中,有两种类型的字符串表示形式: C-风格字符串 C++引入的string类 C-风格字符串中有大量的函数用来操作以 null 结尾的字符串: 1 strcpy(s1,s2) 复制字符串 s2 到字符串 s1 2 strcat(s1,s2) 连接字符串 s2 到字符串 s1 的末尾 3 strlen(s1) 返回字符串 s1 的长度 4 strc...

知识搬运工的博客 8094

vscode+latex+bib文献管理

下载vscode 安装插件`` 在setting.json中配置 在.tex文件中编写论文内容,然后左侧TEX侧边栏中编译,如下图所示,中文用xelatex,英文用pdflatex;编译成功后,就可以查看pdf版本的论文了,我一般在浏览器显示。 涉及到文献编译:XXX.bib中存储文献管理内容;XXX.tex是文章内容,使用xelatex编译后会生成XXX.aux,ctrl+⋅ctrl+·ctrl+⋅打开命令行窗口,输入bibtex XXX(可以对aux文件进行编译,不需要加后缀),然后再xelatex.

小卜妞的博客 2546

C++中的字符串类型以及布尔类型

C++中的字符串类型以及布尔类型

Xinhuaibugui000的博客 933

关于使用EB tresos出现无法激活的情况解决

我在安装eb studio时就是在激活方面有问题导致无法使用,下面讲解出现了什么问题以及我如何去解除的。EB安装完成时需要激活才能使用的,不然都打开或者建立不了工程,一直都是报的dns服务器错误,好的,那我改dns服务器地址。填写dns服务器地址,也可以换成别的,自己百度一下适合自己的。这是解决方案哈哈哈哈。

weixin_43673603的博客 6179

Hive数据迁移

【迁移背景】 本次需要将老集群的hive数据(共30多张表)迁移至新集群中。 老集群版本为CDH5.13,未启用kerberos; 新集群版本为CDH5.14,启用了kerberos。 由于cloudera官方文档说明,在5.x的版本不支持从未启用kerberos的集群与启用了kerberos的集群之间的数据复制。因此无法通过bdr方式进行数据同步。于是采用手工方式进行测试验证。 第一步...

wangkuangood3200的专栏 469

C++中的字符串类型及相互转化

转自:http://www.cnblogs.com/daidaigua/archive/2012/04/14/2447151.html   1、字符(串)表示分类   C++提供了两种字符串的表示形式,即C风格的字符串和标准字符串。 C++引入的是string 类类型,但实际上在许多程序的情形中我们有必要理解和使用老式的C 风格字符串。总共包括以下几种类型:   a.char   b.

Back to the origin 1831

生成模型实战 | MuseGAN详解与实现

人工智能音乐生成领域已引起了广泛关注,MuseGAN 是其中一个重要的模型。本节我们将使用 JSB Chorales 数据集来训练 MuseGAN,该数据集包含巴赫创作的四音轨合唱曲。在生成图像时,生成器使用的是来自潜在空间的单一噪声向量来生成不同格式的内容;而在 MuseGAN 中,生成器将使用四个噪声向量来生成一段音乐,旨在增强音乐生成过程中的可控行和多样性。每个噪声向量代表音乐的不同方面,通过单独调整这些向量,模型可以生成更复杂、更细腻的音乐作品。

盼小辉丶的博客 6542

c++中的字符串类型变量

初学C++,记录一下自己的学习

TiyaTiyaTiya的专栏 1700

巡检类机器人电池容量计算方法论(原理+算法+真实案例)

摘要:本文系统阐述了巡检机器人电池容量的计算方法,重点解析了;能量平衡;核心原理和三种主流算法。通过光伏电站履带式巡检机器人的真实案例,详细演示了从工况拆解、功耗采集到容量计算的完整流程。文章指出:室内轻载场景可采用静态平均功耗法,户外常规工况推荐动态负载积分法,而复杂环境需采用融合估算算法。特别强调需考虑温度修正(冬季容量衰减20%)、冗余系数(1.2-1.5)和放电深度(磷酸铁锂DoD取80%)等关键参数。

start_up_go的博客 241

启动launch文件时显示找不到franka_ign_ros2_control-system...如何解决?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 694

C++中的字符串类型(转载)

C++中的字符串类型   本人c++新手,最近用C++,发现c++里面需要处理的字符串类型让我头疼,通过查阅资料,总结在此,供日后查阅,也请前辈不吝赐教,指出不足。   1.字符(串)表示分类   C++提供了两种字符串的表示形式,即C风格的字符串和标准字符串。 C++引入的是string 类类型,但实际上在许多程序的情形中我们有必要理解和使用老式的C 风格字符串。总共包括以

fantasypan的专栏 1255

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

C++中的《数字字符串类型-数字类型转换总结》

C++11中,由于右值引用的引入,常为人诟病std::string的性能问题得到了很大的改善。另一方面,我们也可以看到新语言为std::string类增加了很多新的api。比较引人注意的有std::string的成员函数stoi系列,以及std::to_string全局函数。这两种API虽很不起眼,却为C++11的格式化输出(formatted I/O)增加了一种实用的手段。我们可以依序会议一下C...

PzLu's Blog 788

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

C++中的字符串

1.Cpp中的字符串 C++提供了以下两种类型的字符串表示形式: C风格字符串 C++引入的string类类型 1.1 C风格字符串 C风格的字符串起源于C语言,并在C++中继续得到支持。字符串实际上是使用null字符’\0’终止的一维字符数组。因此,一个以null结尾的字符串,包含了组成字符串的字符。 下面的声明和初始化创建了一个"Hello"字符串。由于在数组的末尾存储了空字...

CurryCoder的个人博客 1232

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

上一篇: C++中vector的用法
下一篇: C++中的数组
deep_explore
博客等级 码龄16年 54粉丝 97原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值