C++中String类对象的初始化和基本用法

2023-05-16

1. 初始化的几种方法和错误案例

首先当然是包含头文件了:

#include<string>

下面是几种初始化的方法,直接上代码了:

//**初始化的几种方式**//

	string s1("Hello");
	cout <<"s1= "<< s1 << endl;
	string s2(8, '*');		//8个连续的*
	cout << "s2= "<<s2 << endl;
	string s3 = "Liubing";
	cout << "s3= " << s3<<endl;
	string s4;
	s4 = 'F';
	cout << "s4= " << s4 << endl;

几种错误写法:

  • string s4=‘F’; 错误!但是上面代码里的那种s4写法是可以的。
  • string s5=1; 错误!
  • string s5;s5=1; 不报错,但是运行结果显示不出来。

2. 常用的成员函数及基本操作

这些用法主要包括,赋值、连接字符串、替换、删除等等,具体看代码,为了当做练习,就特意编了个练练手:

	//**常用的成员函数、操作**//

	//1、求长度length()和size()都可
	cout << "length of s1: " << s1.length() << " or " << s1.size()<<endl;
	//2、= string对象赋值
	string s5 = s1;
	cout << "s5= " << s5 << endl;
	//3、+ 连接两个string对象
	s5 += s3;
	cout << "s5+s3= " << s5 << endl;
	//4、substr() 提取子字符串函数
	string s6;
	s6 = s5.substr(5, 7);		//s5下标5开始7个字符赋值给s6
	cout << "Name: " << s6 << endl;
	//5、insert() 插入字符函数
	string s7(" is a student from ZJU");
	s6.insert(7, s7);		//将s7插入到s6中下标为7处,即末尾(从0开始数)
	cout << "Insert campus info: " << s6 << endl;
	//6、find() 寻找字符串函数
	int p = s7.find("ZJU");		//查找ZJU第一次出现的地方,找到返回Z出现的位置,找不到返回string::npos静态常量
	cout << "String ZJU is at " << p << endl;
	//7、replace() 替换字符串函数
	string s8("SDU");
	s7.replace(p, 3, s8);		//将p位置处连续3个字符换成s8,即ZJU换成SDU
	s3.insert(7, s7);		//替换之后重新插入到s3末尾
	cout << "Replace campus info: " << s3 << endl;
	//8、erase() 删除字符串函数
	int p1 = s3.find(" is a student");	//先定位
	s3.erase(p1);	//删除下标p1之后的所有字符
	cout << "Delete the campus info: " << s3 << endl;

课上老师说,以后尽量别用char什么的了,就用string吧。想了想,string的好处主要是因为有这么多好用的成员函数,这可能是它的优越之处吧。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++中String类对象的初始化和基本用法 的相关文章

  • C语言中字符串结束符

    C语言中字符串结束符 39 0 39 39 0 39 就是8位的00000000 xff0c 为字符NULL 因为字符类型中并没有对应的这个字符 xff0c 所以这么写 39 0 39 就是字符串结束标志 1 字符串变量str 在C语言中没
  • C++服务器开发完整学习路线(含免费学习资料下载地址)

    视频资料 微信搜索公众号 高并发学习社区 关注并且发送消息 视频 C 43 43 服务器开发完整学习路线 xff08 含免费学习资料下载地址 xff09 相信大部分同学刚毕业或者想转行做c 43 43 服务端开发的时候都很迷茫不知道从哪里开
  • 百度笔试题——开发测试工程师(深圳)

    题目大致意思 一 简答题 1 设计一个自动测试方案测试软件的MTTF xff08 平均无故障时间 xff09 2 线程有执行中 xff0c 就绪中 xff0c 等待中三个状态 xff0c 请描述着三个状态和之间的转换条件 3 数据库设计要满
  • 王垠——从工具的奴隶到工具的主人 摘要

    王垠博客链接 xff1a http www yinwang org 重点学习 xff1a 计算机程序的构造与解释SICP 再学Paul Graham的 On Lisp 和Peter Norvig的 Paradigms of Artifici
  • 一位程序员妹纸讲述她是如何拿到美团offer的?

    作者 xff1a 只爱羽毛球的程序媛 来源 xff1a http t cn EaXy17r 美团 xff0c 我是在拉勾网上投的简历 xff0c 之前也投过一次 xff0c 简历都没通过删选 xff0c 后来让学姐帮我改了一下简历 xff0
  • 一文读懂数据中台架构体系(收藏)

    点击关注公众号 xff1a 互联网架构师 xff0c 后台回复 2T获取2TB学习资源 xff01 上一篇 xff1a Alibaba开源内网高并发编程手册 pdf 当前 xff0c 大部分企业不再建设从源数据采集到分析应用的烟囱式系统 x
  • 计算机专业走嵌入式还是纯软?

    嵌入式也分多个方向 xff0c 单片机方向 Linux方向 安卓方向 如果你是电子通信或电气自动化这种类似的专业 xff0c 你肯定要选择的是嵌入式了 xff0c 首先嵌入式对硬件基础是有要求的 xff0c 模电数电肯定都是逃不过的 xff
  • 树莓派3降低内核版本,安装Tenda U6 RTL8192无线网卡驱动

    树莓派3内置了蓝牙和wifi xff0c 但是在对网络要求比较苛刻的条件下 xff0c 出现网络质量不太好的情况 xff0c 所以买了Tenda的两款USB无线网卡 xff0c 分别是W311MA免驱版和U6 树莓派3刷了Linux内核 x
  • 使用mobaxterm连接服务器出现连接中断问题

    使用mobaxterm连接服务器 mobaxterm是一个很不错的远程连接工具 xff0c 功能也很强大 在连接到远程服务器时 xff0c 如果隔一段时间不进行操作的话 xff0c 会出现中断连接的现象 解决这个问题 xff0c 可以在se
  • Python爬虫之收藏夹

    正则表达式30分钟入门教程 在线正则表达式测试 requests中文文档 Beautiful Soup 4 2 0 中文文档
  • 树莓派 - PX4 安装教程

    留坑 xff0c 近期群上有小伙伴想要入坑 树莓派PX4 xff0c 所以想写一个基础安装教程 xff0c 如果有不合理请指出 250渣渣架子 xff0c 后期换成Q380了 准备清单 1 xff0c 树莓派Pi3 xff08 推荐这个 x
  • STM32 Systick定时器在实现1us延时时的问题与解决

    问题 xff1a 使用systick config 函数来实现计数 xff0c 这个函数在下面代码中的 SysTick CTRL TICKINT Msk 开启了中断 不论系统时钟为72Mhz或36Mhz若设置STM32每10us进入一次中断
  • VINS-MONO运行(运行VINS-Mono没有轨迹的原因)

    VINS MONO下载及编译 与github中 https github com HKUST Aerial Robotics VINS Mono的一致 下载VINS MONO文件 cd catkin ws src git clone htt
  • gitkraken汉化

    想要汉化gitkraken xff0c 上链接 xff0c 下载解压 链接 xff1a https pan baidu com s 136cQzS7 SsIazhyF1IojsQ 提取码 xff1a 0lzb 01 双击运行install
  • 使用Ubuntu系统运行C或C++程序

    查找Ubuntu系统是否有gcc软件 xff0c 输入指令which gcc 查看gcc的版本 xff0c 输入gcc version 然后就可以确定系统自带gcc编译器了 gcc用来编译C xff0c g 43 43 用来编译C 43 4
  • Ubuntu删除文件和文件夹命令

    r表示向下递归删除 f表示直接强制删除 xff0c 没有任何提示 对于文件夹的删除一般用rm rf xff08 文件夹删除必须有r xff0c 递归删除 xff09 对于文件的删除一般用rm f xff08 其实rm本身就可以完成文件删除
  • slam十四讲中Sophus库安装以及遇到so3.h找不到文件的解决

    首先安装Sophus库 xff0c 首先说明一下 xff0c 我安装的是非模板类 xff0c 非模板类相对模板类更好上手 xff0c 且我下载的slam作者提供的sophus库压缩包也是非模板类 一 下载 git clone https g
  • 解决resource not found问题

    在运行ros中的xacro文件时出现的如下问题 resource not found mbot description ROS path 0 61 opt ros melodic share ros ROS path 1 61 opt ro
  • CV::mat 学习

    原文 xff1a http blog sina com cn s blog ac1864bd010188cm html opencv从c到c 43 43 Opencv2 0版本发布后 xff0c 其新的C 43 43 接口 xff0c cv
  • pcl::pointcloud和pcl::pointcloud::Ptr区别

    后者是指针类型的点云类 定义点云的格式 xff1a pcl PointCloudpcl PointXYZ Ptr cloud Ptr new pcl PointCloudpcl PointXYZ pcl PointCloudpcl Poin

随机推荐

  • ROS安装 rosdep update报错解决

    https blog csdn net leida wt article details 115120940 跟这个做 xff0c 注意正文中对第五个地址的补充gbpdistro url 61 https ghproxy com 43 gb
  • Jetson Xavier 通过jetson-io配置设备树 (9)

    1 在终端输入扩展40Pin配置脚本 sudo opt nvidia jetson io jetson io py 2 选择进入Configure 40 pin expansion header 3 空格选中spi1 或者其他需要的扩展功能
  • UCOSIII系统学习笔记

    说明 xff1a 本文主要讲针对STM32的UCOSIII3 03版本的文件与内核分析 此文只是对UCOSIII粗略的讲解 xff0c 希望读者在读完后能对UCOSIII系统整体多些认识 xff0c 细节方面还请读者参考相关书籍 xff0c
  • 汽车CAN总线详解

    概述 CAN xff08 Controller Area Network xff09 总线协议是由 BOSCH 发明的一种基于消息广播模式的串行通信总线 xff0c 它起初用于实现汽车内ECU之间可靠的通信 xff0c 后因其简单实用可靠等
  • microchip pm42100-kit调试记录

    1 先给板子上电 xff0c 2 安装chiplink 新安装的是连接不上串口的 通过Help gt 帮助目录 xff0c 安装 nbm文件 加载 nbm文件 Tools gt Plugins gt Downloaded gt Add Pl
  • nvidia orin简介

    NVIDIA发布的Xavier已经在市场上打拼了好几年了 xff0c 同行竞争者一直在追赶 力图超越 xff0c Xavier也在应用中出现了一些问题 xff0c NVIDIA也该把Orin这个新武器揭开面纱了 虽然去年的GTC上有一些信息
  • PCI-E 1x, 4x, 8x, 16x 接口定义

    1 PCI E插槽及金手指实物图 xff08 1 xff09 PCI E插槽 从上至下依次为PCI E 4X PCI E 16X PCI E 1X xff08 2 xff09 PCI E金手指 PCI E 1X金手指 PCI E 4X金手指
  • Jetson Xavier RC EP 的PCIe互通测试(12)

    一 硬件连接 xff1a 交叉线 X16引脚定义 xff1a 从此面看 xff1a 从上到下 xff0c 依次为A1 A2 A3 从背面看 xff1a 从上到下 xff0c 依次为B1 B2 B3 注意断开 xff1a A2 A3 B1 B
  • 将自己的ubuntu20.04做成镜像

    系统 xff1a Ubuntu20 04 软件 xff1a systemback 硬件 xff1a 128GU盘一个 1 安装systemback sudo sh c 39 echo 34 deb arch 61 amd64 http mi
  • Orin + SC16IS752+SP3072 SPI转串口485

    文章目录 1 前言 2 修改过程 2 1 sc16is752 芯片 2 1 1引脚说明 2 1 2 设备树配置 2 2 1 源码分析 3 调试 1 前言 Orin 有四路串口 对于多数设备来说已经够用 通过SPI 转串口再转RS485在Or
  • MIPI CSI介绍

    文章目录 1 概述2 MIPI接口的演变2 1 CSI 12 2 CSI 22 3 CSI 32 4 更多关于CSI 3 其他3 1 为什么用MIPI CSI 2代替USB 3 2 MIPI CSI 2的性能亮点3 3 MIPI相机 它是如
  • 车载摄像头概述

    1 车载摄像头概述 SerDes环境 上边的摄像头是德国豪车配备的车载摄像头 我们是从国外网站上买的 为了选择车载摄像头 xff0c 你需要获得关于它的各种信息 首先 xff0c 您需要获取连接器和序列化器制造商名称的信息 xff0c 然后
  • ARM7的三级流水线过程

    看到汇编中很多关于程序返回与中断返回时处理地址都很特别 xff0c 仔细想想原来是流水线作用的效果 所以 xff0c 决定总结学习下ARM流水线 ARM7处理器采用3级流水线来增加处理器指令流的速度 xff0c 能提供0 9MIPS MHz
  • nor flash和nand flash的区别

    NOR 和 NAND 是现在市场上两种主要的非易失闪存技术 Intel 于 1988 年首先开发出 NOR flash 技术 xff0c 彻底改变了原先由 EPROM 和 EEPROM 一统天下的局面 紧接着 xff0c 1989 年 xf
  • UART通信协议

    UART 是用于控制计算机与串行设备的芯片 有一点要注意的是 xff0c 它提供了RS 232C 数据终端设备接口 xff0c 这样计算机就可以和调制解调器或其它使用RS 232C接口的串行设备通信了 作为接口的一部分 xff0c UART
  • stm32f103的IAP升级时,部分APP程序功能丢失,串口中断不起作用,怎么办?

    昨天我用stm32f103做IAP升级 xff0c APP程序是一个LED闪烁和一个串口1收发数据 结果IAP升级后 xff0c 发现APP程序只有LED闪烁但是串口1不行甚至引起死机 这种半死不活的现象是最莫名其妙的 xff0c 它一半在
  • 计算机的启动过程(详细)

    零 boot的含义 先问一个问题 xff0c 启动 用英语怎么说 xff1f 回答是boot 可是 xff0c boot原来的意思是靴子 xff0c 启动 与靴子有什么关系呢 xff1f 原来 xff0c 这里的boot是bootstrap
  • 史上最全Linux面试题(2020最新版)

    出处 xff1a https blog csdn net thinkwon article details 104588679 作者 xff1a ThinkWon 导读 xff1a 本文整理了最新的Linux面试题 xff0c 近3万字 x
  • Endnote中文参考文献格式下载地址(官网)

    Endnote中文参考文献格式官网下载地址 1 下载2 安装 1 下载 今天在写中文论文时 xff0c 发现Endnote里没有中文参考文献格式 上网找了一下有些下载尽然还要币 xff0c 最后看到其实官网里就有GBT7114格式 xff1
  • C++中String类对象的初始化和基本用法

    1 初始化的几种方法和错误案例 首先当然是包含头文件了 xff1a span class token macro property span class token directive keyword include span span c