iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++ 系统String类详解
  • 301
分享到

C++ 系统String类详解

2024-04-02 19:04:59 301人浏览 独家记忆
摘要

目录一、c++系统String类1.定义及初始化2.类型大小3.常用运算1.赋值2.加法3.关系4.常见的成员函数1.下标操作2.求串大小3.返回c串(C语言中的字符串也叫c串)4.

一、C++ 系统String类

除了使用字符数组来处理字符串以外,c++引入了字符串类型。可以定义字符串变量。

1.定义及初始化


#include <iOStream>
#include <string.h>
using namespace std;
int main()
{
	string str;
	str = "china";
	string str2 = " is great ";
	string str3 = str2;
	cout<<str<<str2<<endl<<str3<<endl;
	return 0;
}

输出结果

2.类型大小


cout<<"sizeof(string) = "<<sizeof(string)<<endl;
cout<<"sizeof(str) = "<<sizeof(str)<<endl;

输出结果

3.常用运算

1.赋值


string str3 = str

2.加法


string combine = str + str2;
cout<<combine<<endl;

3.关系


#include <iostream>
#include <string.h>
using namespace std;
int main()
{
	string s1 = "abcdeg";
	string s2 = "12345";
	if(s1>s2)
		cout<<"s1>s2"<<endl;
	else
		cout<<"s1<s2"<<endl;
	string s3 = s1+s2;
	cout<<s3<<endl;
	return 0;
}

输出结果

4.常见的成员函数

1.下标操作


char & operator[](int n) ;

2.求串大小


int size();

3.返回c串(c语言中的字符串也叫c串)


char *c_str();

4.查找


int find(char c, int pos = 0);
int find(char * s, int pos = 0);
//返回下标值,没有找到返回-1,默认从 0 下标开

5.删除


string &erase(int idx=0,int n = npos);
//作用是删除从 idx 开始,往后数 n 位的字符串

6.交换swap


void swap(stirng &s2);

5.string类型数组


#include <iostream>
#include <string.h>
using namespace std;
int main()
{
	string sArray[10] = {
	"0",
	"1",
	"22",
	"333",
	"4444",
	"55555",
	"666666",
	"7777777",
	"88888888",
	"999999999",
	};
	for(int i=0; i<10; i++)
	{
		cout<<sArray[i]<<endl;
	}
	return 0;
}

string 数组是高效的,如果用二维数组来存入字符串数组的话,则容易浪费空间,此时列数是由最长的字符串决定。如果用二级指针申请堆空间,依据大小申请相应的空间,虽然解决了内存浪费的问题,但是操作麻烦。用 string 数组存储,字符串数组的话,效率即高又灵活。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

--结束END--

本文标题: C++ 系统String类详解

本文链接: https://www.lsjlt.com/news/156042.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++ 系统String类详解
    目录一、C++系统String类1.定义及初始化2.类型大小3.常用运算1.赋值2.加法3.关系4.常见的成员函数1.下标操作2.求串大小3.返回c串(c语言中的字符串也叫c串)4....
    99+
    2022-11-12
  • c#中String类型的存储原理详解
    在我们正式了解c#中的String类型前,先来判断一下下面代码的结果吧~ String str1 = "123"; String str2 = str1; str2 = "321";...
    99+
    2022-11-13
  • 【C++】:string用法详解
    朋友们、伙计们,我们又见面了,本期来给大家解读一下有关Linux的基础知识点,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! C 语 言 专 栏:C语言:从入门到精通 数据结构专栏:数据结构 个  人  主...
    99+
    2023-10-20
    c++ string
  • C++之string类对象的容量操作详解
    目录前言1. size返回字符串的有效长度2. length 返回字符串的有效长度3. capacity 返回总空间的大小4. empty 检测是否为空串5. clear 清空有效字...
    99+
    2022-11-12
  • Java【String类】的详解
    目录 🐲 1.了解String类 🐲 2.String类常用方法 🦄 2.1 字符串构造 🦄 2.2 字符串查找 🦄 2.3 字符串截取 🦄 2...
    99+
    2023-08-31
    java
  • c++模拟实现string类详情
    目录一、string类简介二、模拟实现成员变量成员函数迭代器重载运算符[ ]三、几种常见函数reserve()resize()push_back()append()重载+=inser...
    99+
    2022-11-12
  • C#的String和StringBuilder详解
    1.什么时候用String?什么时候用StringBuilder? 字符串一旦创建就不可修改大小,每次使用System.String类中的方法之一时,都要在内存中创建一个新的...
    99+
    2022-11-12
  • Java String类用法详解
    一、简介 零碎知识点 extends Object implements serializable,Comparable< String >,charS...
    99+
    2022-11-12
  • c# DirectoryInfo类 详解
    DirectoryInfo类是System.IO命名空间下的一个类,用于操作目录。1. 创建DirectoryInfo对象:Dire...
    99+
    2023-09-12
    C#
  • c++primer类详解
    目录1. 定义抽象数据类型1.1 设计Sales_data类1.2 定义类相关的非成员函数1.3构造函数1.4 拷贝、赋值和析构2 访问控制和封装2.1 友元2.2 类的其他特性2....
    99+
    2022-11-12
  • C++空类详解
    空类默认产生的成员:class Empty {};Empty(); // 默认构造函数Empty( const Empty& ); // 默认拷贝构造函数~Empty(); ...
    99+
    2022-11-15
    C++ 空类
  • C++深浅拷贝和string类的两种写法详解
    目录一、深浅拷贝二、string类的两种写法1. 传统写法2. 现代写法总结一、深浅拷贝 拷贝这个词对于我们来说应该不陌生,比如我们平常的复制和粘贴就是拷贝;但是如果把拷贝这个词放到...
    99+
    2022-11-13
  • C#中的char与string详解
    1. System.Char 字符 char 是 System.Char 的别名。 System.Char 占两个字节,16个二进制位。 System.Char 用来表示、存储一个 ...
    99+
    2022-11-13
  • JAVA API 实用类 String详解
    目录String类字符串的概念Java String的特殊之处String类的基本方法字符串创建常用方法总结String类 字符串的概念 简单来说字符串就是由多个字符(char)来组...
    99+
    2022-11-12
  • C# String字符串案例详解
    string是一种很特殊的数据类型,它既是基元类型又是引用类型,在编译以及运行时,.Net都对它做了一些优化工作,正式这些优化工作有时会迷惑编程人员,使string看起来难以琢磨。这...
    99+
    2022-11-12
  • java新手入门——String类详解
    目录一、创建字符串1. 直接赋值(常用)2. new String3. 字符数组转String4.String类中两种对象实例化的区别二、字符串比较相等1.直接比较字符串2.字符串在...
    99+
    2022-11-12
  • C# MemoryStream类案例详解
    MemoryStream位于System.IO命名空间,为系统内存提供流式的读写操作。常作为其他流数据交换时的中间对象操作。 MemoryStream类封装一个字节数组,在...
    99+
    2022-11-12
  • C# CultureInfo类案例详解
    c#中的CultureInfo类 CultureInfo类位于System.Globalization命名空间内,这个类和命名空间许多人都不是很熟悉,实际我们在写程序写都经常间接性的...
    99+
    2022-11-12
  • C# PropertyInfo类案例详解
    对一个对象进行属性分析,并得到相应的属性值,并判断属性的默认值以及空值 public class People { public string name...
    99+
    2022-11-12
  • C++ stringstream类用法详解
    本文主要介绍 C++ 中 stringstream 类的常见用法。 1 概述 <sstream> 定义了三个类:istringstream、ostringstream 和...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作