头文件cstring、string、string.h的区别「建议收藏」

头文件cstring、string、string.h的区别「建议收藏」头文件cstring、string、string.h的区别<string>是C++标准库头文件,使用stirng类型必须首先包含string头文件,用于字符串操作,string类型可以进行+、=、+=、>等运算。std::string类实际上是STL模板类std::basic_string的具体化。#include<string>usingnamespacestd;strings;<cstring>是C标准库头文件<strin

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

头文件cstring、string、string.h的区别

<string>是C++标准库头文件,使用stirng类型必须首先包含string头文件,用于字符串操作,string类型可以进行+、 =、 +=、 >等运算。std::string 类实际上是 STL 模板类 std::basic_string 的具体化。

#include<string>
using namespace std;
string s;

<cstring>是C标准库头文件<string.h>对应的C++标准库版本,包含了C风格字符串(即’\0’结尾字符数组),以及相关的一些类型和函数,例如strcmp、strchr、strstr等函数。<cstring>和<string.h>的最大区别在于,其中声明的名称都是位于std命名空间中的,而后者是全局命名空间。包含cstring之后,就可以在程序中使用C语言风格的strcpy之类的函数。

C风格字符串

C 风格字符串是一种特殊的字符数组。 该数组的最后一个字符为空字符‘\0’。这也被称为字符串结束字符,因为它告诉编译器,字符串到此结束。在代码中使用字符串字面量时,编译器将负责在它后面添加‘\0’。使用 C 语言编写的应用程序经常使用 strcpy()等字符串复制函数、strcat()等拼接函数,还经常使用 strlen()来确定字符串的长度。如果使用C风格字符串没有在字符数组末尾添加空字符,这些函数将跨越字符数组的边界。

C++字符串:使用 std::string

标准库类型strirng表示可变长的字符序列,作为标准库的一部分,string定义在命名空间std中。

string的操作
s.empty() s为空返回true,否则返回false
s.size() 返回s中字符个数
s[n] 返回s中第n个字符的引用,从0算起
s1+s2 返回s1与s2的连接
s1=s2 用s2的副本代替s1中原有的字符
s1==s2 判断s1与s2所含字符是否一样,大小写敏感
<,<=,>,>= 利用字符在字典中的顺序进行比较,大小写敏感

读写string对象

  1. 使用标准库中的iostream读写string对象
int main(){ 
   
    string s;
    cin >> s;	//将string对象读入s,遇到空白停止
    cout << s << endl;
	return 0;
}

  1. 使用getline读取一整行

有时我们希望能在最终得到的字符串中保留输入时的空白符,这时候应该用getline函数代替原来的>>运算符。getline函数的参数是一个输入流和一个string对象,函数从给定的输入流中读入内容,直到遇到换行符为止(注意换行符也被都进来了),然后把所读的内容存入到string对象中(注意不存换行符)。

int main(){ 
   
	string line;
	getline(sin, line);
	cout<< line << endl;
	return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/197483.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • VSCode 快捷键大全

    VSCode 快捷键大全授人以鱼不如授人以渔~我将不会在下面列出VSCode的快捷键,而是告诉大家怎么去找到全部的快捷键~1、打开VSCode,点击左下角设置图标2、找到键盘快捷方式3、打开后界面如下4、我们可以在最上方的搜索栏内搜索自己想要查看的快捷键例如:搜索“向下移动行”,搜索结果内的“键绑定”就是我们想要的快捷键5、如果觉得默认的快捷键不适应,我们还可以选择更改或者删除鼠标移动到文字…

  • App的宣传方式?

    ##1.线上渠道各大下载市场、应用商店、大平台、下载站的覆盖,线上推广的第一步是要上线,这是最基础的。无需砸钱,只需最大范围的覆盖,具体有:运营商渠道推广、第三方商店、手机厂商商店、积分墙推广、刷榜推广、社交平台推广、广告平台、换量推广等等很多方式。##2.线下推广主要是手机厂商预装、水货刷机、行货店面刷机、地推、线下活动推广等。##3.是线上宣传PR传播、事件营

  • 很多人都患有一种毛病,将自己看得过高,自认样样都最好,而别人则个个不如自己,唯有自己看得较顺眼,这是非常错误的,因世上每个人都有些优点值得我们学习。因此我们必须“取他人之长。补自己之短”这样才能在从事…

    很多人都患有一种毛病,将自己看得过高,自认样样都最好,而别人则个个不如自己,唯有自己看得较顺眼,这是非常错误的,因世上每个人都有些优点值得我们学习。因此我们必须“取他人之长。补自己之短”这样才能在从事…

  • c#语言_c# ref

    c#语言_c# refStringBuilder用于大量的字符串的修改的地方,比如要大量的连接字符串时,使用它能节省内存空间。StringBuildertestStr=newStringBuilder(“abcdef:ggg”);//testStr.AppendFormat($”{s}”);testStr.Append($”{s}”);intlen=testStr.Length;

    2022年10月21日
  • 建索引的优缺点

    建索引的优缺点参考:https://blog.csdn.net/ybaog/article/details/53906300为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。第二,可以大大加快数据的检索速度,这也是创建索引的最主要的原因。第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。…

  • Python数据分析的过程记录

    Python数据分析的过程记录第一次Python接单的过程记录文章目录第一次Python接单的过程记录

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号