C++,基础函数、string、引用型变量reference

news2024/11/25 4:53:30

9月18日

C++标准库。

一、C++入门基础

       1、基础

       入口函数与C语言相同

       后缀名使用cpp

       注释与c语言相同

       导入c++标准库无需后缀

       自定义头文件与c语言相同

using namespace std;

std:名称空间(全局区)

cout、endl属性名称空间“std”

C++输出没有格式输出符。

       2、C++输入cin

    int a;
    char a1[100];
    cin>>a>>a1
    cout<<"a1:"<<a1<<"  "<<"a="<<a<<endl;
    return 0;

      3、C++格式控制

       导入头文件<iomanip>

void f2()
{
    int x=10;
    cout <<x<<endl;
    cout<<std::hex<<x<<endl;//16进制输出
}
int main(int argc, char *argv[])
{
    int x=123;
    f2();
    cout << setw(20)<<setfill('*')<<x<<endl;

    //只有setw只设置一次,其他都是全部设置(设置一次后,后面的都是这个设置)。 

      4、字符串string

       以空格结束。

       void f4()
    {
    string str1;
    getline(cin,str1);//可以输入空格。
    cout<<str1<<endl;
    }

      

 std::flush刷新输出

       根据索引获取字符,根据索引修改字符串中的字符。

 string.at(index) 与 string[index]效果等效。

      

 string append(string),连接字符串;

     

 int find(string): 返回子字符串在调用字符串中的首个字符索引,失败返回0;

 erase();

       erase(pos,n)删除从pos位置开始的n个字符,当余下的字符不足n,有多少删多少

       erase(pos):删除从pos位置开始的所有字符

string insert(size_t pos,const string& str);

       pos:要插入的位置的索引

       str要插入的另一个字符。

字符比较:==、!=、<、>、<=、>=。

字符串反转:

       头文件 include<algorithm>

       reverse(str.begin,sre.end())。

        *(str.begin):迭代器。

find_first_not_of(char c):

返回第一个不是字符c的索引。

find_last_not_of(char c):

返回最后一个不是字符c的索引。

       5、变量的引用reference

       一、引用类型:int &

       创建时才能取别名,创建引用类型时必须初始化。

       int a=10;

       int b=100;

       int &y = a; 给a取别名。

       y=b;给a,y赋值。

       二、为堆中内存起名字

int *p=(int *)malloc(4);

int &y=*p; //y成了p指向的内存的别名

       三、引用型变量当作形参,用于当作变量别名

    实参为变量名

       实参为变量的引用

       实参为堆中内存

      

       四、函数返回堆内存的引用

              (1)能返回堆中内存的引用。

              (2)能返回堆中内存,因为返回前,内存会被自动转换为引用,本质还是返回的堆中内存的引用

              (3)接收堆中引用时,要使用引用类型变量来接收,否则很难销毁堆中内存了。

       五、不能要返回局部变量的引用,局部变量函数执行结束后被销毁。

       六、返回对象的引用

       正则表达式:将空格替换成需要的值(连续的空格被替换一次)

       #include <regex>

       void mergeSpace(string &src,string rep){

              regex re(“\\s+”);//s:space的缩写,“+”表示连续的。

              src=regex_replace(src,re,rep);

    }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1021587.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux入门到精通-第三章-vi(vim)编辑器

目录 文本编辑器gedit介绍vi(vim)命令模式命令模式编辑模式末行模式 帮助教程保存文件切换到编辑模式光标移动(命令模式下)复制粘贴删除撤销恢复保存退出查找替换可视模式替换模式分屏其他用法配置文件 文本编辑器 gedit介绍 gedit是一个GNOME桌面环境下兼容UTF-8的文本编辑器…

SpringCLoud——Docker的基本介绍

什么是Docker 项目部署问题 大型项目组件较多&#xff0c;运行环境也较为复杂&#xff0c;部署时会碰到一些问题&#xff1a; 依赖关系复杂&#xff0c;容易出现兼容性问题开发、测试、生产环境有差异。 Docker Docker如何解决依赖的兼容问题的&#xff1f; 将应用的LIbs&…

GDPU 数据结构 天码行空2

实验内容 用顺序表实现病历信息的管理与查询功能。具体要求如下: 利用教材中定义顺序表类型存储病人病历信息(病历号,姓名&#xff0c;症状)&#xff1b;要求使用头文件。 设计顺序表定位查找算法&#xff0c;写成一个函数&#xff0c;完成的功能为:在线性表L中查找数据元素x…

CSS 链接:Link

文章目录 CSS 链接链接样式常见的链接样式文本修饰背景颜色案例1&#xff0c;添加不同样式的超链接2&#xff0c;高级 - 创建链接框 CSS 链接 CSS可以用来设置链接的样式&#xff0c;包括未访问的链接&#xff08;a:link&#xff09;、已访问的链接&#xff08;a:visited&…

【Linux 应用】 kworker 进程

1.简介 “kworker” 是 Linux 内核的工作线程&#xff0c;用于异步处理工作队列中的任务。这些任务包括处理硬件中断、文件系统事件、管理系统内存等。你可能会看到多个 kworker 进程&#xff0c;每个进程的名称后面都有一个数字&#xff0c;如 “kworker/0:1”、“kworker/1:…

GIF动画如何生成?简单几步快速生成gif

gif动画图片制作的方法有哪些&#xff1f;gif动图就是由一帧一帧的静态图像合成的动态效果。gif动图能够在日常聊天中缓解尴尬的气氛&#xff0c;表达你的内心想法等等。那么&#xff0c;gif动图如何自制呢&#xff1f;通过使用专业的gif动画制作&#xff08;https://www.gif.c…

Tomcat7+ Weak Password Backend Getshell Vulnerability

漏洞描述 Tomcat 支持通过后端部署 war 文件&#xff0c;所以我们可以直接将 webshell 放入 Web 目录下。为了访问后端&#xff0c;需要权限。 Tomcat7 的权限如下&#xff1a; 经理&#xff08;后台管理&#xff09; 管理器-GUI&#xff08;HTML 页面的权限&#xff09;管理…

JMeter压力测试初体验:线程组、取样器、监听器的简单使用以及如何查看压测结果

&#x1f9d1;‍&#x1f4bb;作者名称&#xff1a;DaenCode &#x1f3a4;作者简介&#xff1a;CSDN实力新星&#xff0c;后端开发两年经验&#xff0c;曾担任甲方技术代表&#xff0c;业余独自创办智源恩创网络科技工作室。会点点Java相关技术栈、帆软报表、低代码平台快速开…

王国纪元 - 龙火战场+国战+IP联动ACW

IGG出品 龙火战场 类似于一个演习战场&#xff0c;给平时不常打仗的小伙伴一个打仗的机会。 大致流程&#xff1a;进场5分钟可以和朋友聊天打屁&#xff0c;商量战术&#xff0c;之后5分钟可以进攻哨塔和传送阵&#xff08;低级联赛没有传送阵&#xff09;&#xff0c;哨塔没什…

如何写出一个成熟的线上线下结合的营销方案?

分享一下咱们案例库里策划的一个线上线下结合的活动的案例。 这个活动是为了推广一个新品牌&#xff0c;增加品牌知名度和用户粘性。 你可以根据以下几个要点来进行活动策划&#xff1a; 1、目标&#xff1a; 让目标用户了解并喜欢新品牌&#xff0c;激发用户参与和分享&am…

使用延迟队列解决分布式事务问题——以订单未支付过期,解锁库存为例

目录 一、前言 二、库存 三、订单 一、前言 上一篇使用springcloud-seata解决分布式事务问题-2PC模式我们说到了使用springcloud-seata解决分布式的缺点——不适用于高并发场景 因此我们使用延迟队列来解决分布式事务问题&#xff0c;即使用柔性事务-可靠消息-最终一致性方…

【JAVASE】图书管理系统

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f4c0; 收录专栏&#xff1a;浅谈Java &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 图书管理系统 1. 设计思路图2. 创建 boo…

2023年 国赛 数学建模C 基于遗传算法和神经网络的销量定价模型

一、写在开头 阅读者可能需要先阅读2023年国赛C题才能读懂下面的内容。 文章着重于解题方向指引和经历分享&#xff0c;只解释部分核心代码。 二、内容概述 刚刚做完比赛&#xff0c;对这段经历和对问题的处理方法进行下记录。 三、个人经历 今年大三&#xff0c;第一…

stm32f103步进电机S曲线计算

S曲线主要实现低速扭力大&#xff0c;更快更稳 https://zhuanlan.zhihu.com/p/396648926?utm_campaign&utm_mediumsocial&utm_oi1361101006265331712&utm_psn1686906450235133952&utm_sourcezhihu 可点击上面链接查看啤酒杯的运动动画 摘自一段知乎上一段关于…

html div span 容器元素

html div && span 容器元素 div 标签定义 HTML 文档中的一个分隔区块或者一个区域部分, 标签常用于组合块级元素&#xff0c;以便通过 CSS 来对这些元素进行格式化 span 用于对文档中的行内元素进行组合 标签提供了一种将文本的一部分或者文档的一部分独立出来的方式 &…

【ELFK】之zookeeper

一、Zookeeper是什么&#xff1f; zooleeper是一个分布式服务管理框架。存储业务服务节点元数据及信息&#xff0c;并复制&#xff1b;通知客户端在zookeeper上注册的服务节点状态&#xff0c;通过文件系统通知机制 1、Zookeeper工作机制 Zookeeper从设计模式角度来理解 是…

Java——文件操作IO

一 、文件File 狭义的文件&#xff1a; 指硬盘上的 文件 和 目录 。 广义的文件&#xff1a; 泛指计算机中的很多软硬件资源。 针对硬盘这种持久化存储的I/O设备&#xff0c;当我们想要进行数据保存时&#xff0c; 往往不是保存成一个整体&#xff0c;而是独立成一个个的单位…

C/C++简单计算器 2019年12月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析

目录 C/C简单计算器 一、题目要求 1、编程实现 2、输入输出 二、解题思路 1、案例分析 三、程序代码 四、程序说明 五、运行结果 六、考点分析 C/C简单计算器 2019年12月 C/C编程等级考试一级编程题 一、题目要求 1、编程实现 一个最简单的计算器&#xff0c;支持…

Hadoop NameNode执行命令工作流程

Hadoop NameNode执行命令工作流程 客户端API或者CLI与NameNode的交互命令数据的格式(1) 预处理流程(2) 创建NameNode与NameNodePrcServer流程(3) HDFS API以及CLI的命令到NameNode的工作执行流程(4) 执行命令的参数流动 客户端API或者CLI与NameNode的交互命令数据的格式 hadoop…

读高性能MySQL(第4版)笔记10_查询性能优化(上)

1. 三管齐下 1.1. 不做、少做、快速地做 1.2. 如果查询太大&#xff0c;服务端会拒绝接收更多的数据并抛出相应错误 1.3. 如果查询写得很糟糕&#xff0c;即使库表结构再合理、索引再合适&#xff0c;也无法实现高性能 1.4. 查询优化、索引优化、库表结构优化需要齐头并进&…