当前位置: 首页 > news >正文

string和自动推断类型

欢迎来观看温柔了岁月.c的博客
目前
设有C++学习专栏
C语言项目专栏
数据结构与算法专栏
目前主要更新C++学习专栏,C语言项目专栏不定时更新
待C++专栏完毕,会陆续更新C++项目专栏和数据结构与算法专栏
一周主要三更,星期三,星期五,星期天
感谢大家的支持

string和自动推断类型

string

string本身是一个类,大家学会使用就可以

它的头文件是<string>

创建方式

#include<iostream>
#include<string> //使用string头文件
using namespace std;int main()
{//创建方式
//1.不赋初值string str1;str1 = "温柔了岁月";//2.赋初值string str2 = "温柔了岁月";//3.用另一个字符串赋值来创建string str3(str2);  //相当于 str3 = str2;cout << str3 << endl;string str4 = str3;cout << str4 << endl;system("pause");return 0;
}

用string ,赋值的字符串,不用担心大小或者越界的关系,它的大小是系统自动给,动态的

基本操作

比较

//比较 cout << (str3 >= str4) << endl; // 真,结果为1cout << (str5 >= str4) << endl; //假结果为0
//输入string str6;cin >> str6;cout << str6;if (str6 == string("温柔了岁月")){cout << "正确" << endl;}

强制类型转换(C与C++)

string("温柔了岁月"),这是C++的强制类型转换 ,

C++中: 数据类型(数据);

C语言中:(数据类型) 数据;

连接

//连接(用加法)string str7;str7 = "张三";string str8 = str7 + "很帅";cout << str8 << endl;

大小计算

    cout << str7.length() << endl; //当前长度cout << str7.size() << endl;  //大下   与长度一样cout << str7.capacity() << endl;  //容量

打印

在C++中直接用cout + << 打印即可
如果想要用printf()打印,不能直接使用%s打印,会出现乱码
因为在C++中它是一个类,sring.h 在C中,它相当于 char*

可以使用两个函数_str(), date()

#include<iostream>
#include<string>
#include<cstdio>using namespace std;int main()
{string str1 = "温柔了岁月";//printf("%s", str1); //不能直接用%s打印printf("%s\n", str1.c_str());printf("%s\n", str1.data());system("pause");return 0;
}

自动推断类型

auto

就是系统自动推断出变量的类型

使用

使用auto,一定要又赋值的操作,变量没有赋值,auto 推不出来,自己就报错

如图所示,a = 9,自动推断出了int 类型

好处

  1. 如果你不知道这个变量的类型,你可以直接使用auto,进行推断

  1. 如果这个变量的类型太长,你可以用auto代替,比较简单

当然auto 的应用不只是这几种,还有关于auto的一种新式的for循环,比起传统的更加简单高效
这种的后续在进行介绍

decltype

它也是一个自动推断类型,与auto不同的是,它可以进行赋初值,也可以不进行赋初值

人们希望从表达式的类型推断出定义的变量类型,但是不想用该表达式的值初始化变量,为了满足这一要求,所以C++11新标准引入了decltype

使用

decltype((a)) 当里面是双重括号的时候,结果用于是引用
decltype(a), 只有当a是引用,它结果才是引用
2.基本的用法decltype(a + 1) num; 通过推断表达式a + 1的类型,从而让num也是该类型
#include<iostream>using namespace std;int main()
{auto a = 9;decltype(123) a = 123; //赋初值decltype(234) num; //不赋初值system("pause");return 0;
}

decltype的好处也是跟auto类型一样的,

你不知道这个变量是什么类型,可以用这个来推

相关文章:

string和自动推断类型

欢迎来观看温柔了岁月.c的博客目前设有C学习专栏C语言项目专栏数据结构与算法专栏目前主要更新C学习专栏&#xff0c;C语言项目专栏不定时更新待C专栏完毕&#xff0c;会陆续更新C项目专栏和数据结构与算法专栏一周主要三更&#xff0c;星期三&#xff0c;星期五&#xff0c;星…...

【软件测试】从功能到自动化测试,测试人的进阶之路细节,这些必不可少......

目录&#xff1a;导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09;前言 测试流程&#xff0…...

C语言青蛙跳台阶【图文详解】

青蛙跳台阶前言1. 题目介绍2. 解题思路3. 利用图片来演示青蛙跳台阶的原理4. 如何用C语言实现青蛙跳台阶前言 在本文&#xff0c;我们要与一只活泼可爱的小青蛙合作&#xff0c;带领着它跳上台阶&#xff0c;这个小家伙精力充沛&#xff0c;特别擅长于跳跃。我们要让它做我们的…...

笔记(五)——list容器的基础理论知识

list容器是一个双向链表容器&#xff0c;可以高效地进行插入删除元素&#xff0c;但是不能随机存取元素&#xff08;不支持at()和[]操作符&#xff09;。一、list容器的对象构造方法list对象采用模板类的默认构造形式例如list<T> lst&#xff1b;#include<iostream>…...

浅谈网络中接口幂等性设计问题

所谓幂等性设计&#xff0c;就是说&#xff0c;一次和多次请求某一个资源应该具有同样的副作用。用数学的语言来表达就是&#xff1a;f(x) f(f(x))。 在数学里&#xff0c;幂等有两种主要的定义。 在某二元运算下&#xff0c;幂等元素是指被自己重复运算&#xff08;或对于函数…...

《C Primer Plus》第13章复习题与编程练习

《C Primer Plus》第13章复习题与编程练习复习题1. 下面的程序有什么问题&#xff1f;2. 下面的程序完成什么任务&#xff1f;&#xff08;假设在命令行环境中运行&#xff09;3. 假设程序中有下列语句&#xff1a;4. 编写一个程序&#xff0c;不接受任何命令行参数或接受一个命…...

计算机SCI论文应该怎么作图? - 易智编译EaseEditing

计算机SCI论文&#xff0c;作图时要注意以下几个方面的问题&#xff1a; 1.图片的格式要tiff或者eps&#xff1b; 2.文件大小不能超过10M&#xff1b; 3.长和宽也给出了具体要求&#xff1b; 4.色彩模式要RGB或者灰度图&#xff1b; 5.文中的文字字体和大小&#xff1b; …...

【一】kubernetes集群部署

一、docker环境搭建 1、移除以前docker相关包 sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine2、配置yam源 sudo yum install -y yum-utilssudo yum-config-manager --ad…...

Docker安装Redis

一、拉取镜像 命令&#xff1a;&#xff1a;docker pull <镜像名称>:<版本号> docker pull redis 二&#xff1a;Docker挂载配置文件 挂载&#xff1a;即将宿主的文件和容器内部目录相关联&#xff0c;相互绑定&#xff0c;在宿主机内修改文件的话也随之修改容…...

在shell中执行一条可执行程序(./a.out) 系统执行的过程

目录 系统调度过程 用户空间角度&#xff1a; 内核角度 1、调用fork创建一个新进程 2、使用_fo_fork创建新进程 3、父进程调用wake_up_new_task尝试唤醒新进程 4、CPU选择一个合适的进程来运行&#xff1b; 5、运行新进程 6、实现负载均衡 系统调度过程 分析在命令行…...

【ArcGIS Pro二次开发】(10):属性表字段(field)的修改

在ArcGIS Pro中&#xff0c;经常会遇到用字段计算器对要素的属性表进行计算。下面以一个例子演示如何在ArcGIS Pro SDK二次开发中实现。 一、要实现的功能 如上图所示的要素图层&#xff0c;要实现如下功能&#xff1a; 当字段【市级行政区】的值为【泉州市】时&#xff0c;将…...

数据结构与算法—散列表

目录 散列表 散列函数 散列冲突解决 1、开放寻址法 1.1 线性探测 1.2 二次探测 1.3 双重散列 2、链表法 使用场景 单词查找 散列表与链表的结合使用LRU 散列表总结 散列表实例 散列表 Word 单词拼写功能&#xff0c;如何实现的&#xff1f;散列表&#xff08;Has…...

计算机网络笔记、面试八股(一)—— TCP/IP网络模型

本章目录1. TCP/IP网络模型1.1 应用层1.1.1 应用层作用1.1.2 应用层有哪些常用协议1.2 运输层1.2.1 TCP与UDP的区别1.2.2 分块传输1.2.3 端口1.3 网络层1.3.1 IP报文1.3.2 IP地址1.3.3 网络号和主机号的获得1.3.4 子网掩码的获得1.3.5 路由1.3.6 IP地址与MAC地址的区别1.3.7 AR…...

Servlet笔记(18):国际化

三个概念 国际化&#xff1a; 意义着一个网站提供不同版本的翻译成访问者的语言或国籍的内容。本地化&#xff1a; 意味着向网站添加资源&#xff0c;以使其适应特定的地理或文化区域。区域设置&#xff1a; 针对某个国家的某个地区的设置。 Servlet可以根据请求者的区域设置…...

kibana搭建(windowslinux)

1.说明 搭建kibana方便查询es库&#xff0c;本文分别对windows和linux版本进行安装&#xff0c;因为es集群版本是7.4.1&#xff0c;所以配套的kibana也是选择相同版本 2.下载 https://artifacts.elastic.co/downloads/kibana/kibana-7.4.1-windows-x86_64.zip https://artifact…...

(pytorch进阶之路)Informer

论文&#xff1a;Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting (AAAI’21 Best Paper) 看了一下以前的论文学习学习&#xff0c;我也是重应用吧&#xff0c;所以代码部分会比较多&#xff0c;理论部分就一笔带过吧 论文作者也很良心的…...

关键词聚类和凸现分析-实战1——亚急性甲状腺炎的

审稿人问题第8页第26行-请指出#是什么意思&#xff0c;并解释为什么亚急性甲状腺炎在这里被列为#8。我认为在搜索亚急性甲状腺炎相关文章时&#xff0c;关键词共现分析应该提供关键词共现的数据。这些结果的实际用途是什么?亚急性甲状腺炎是一种较为罕见但重要的甲状腺疾病&am…...

二叉树——二叉搜索树中的众数

二叉搜索树中的众数 链接 给你一个含重复值的二叉搜索树&#xff08;BST&#xff09;的根节点 root &#xff0c;找出并返回 BST 中的所有 众数&#xff08;即&#xff0c;出现频率最高的元素&#xff09;。 如果树中有不止一个众数&#xff0c;可以按 任意顺序 返回。 假定…...

安装_配置参数解读_集群安装配置_启动选举_搭建启停脚本---大数据之ZooKeeper工作笔记004

这里首先下载zookeeper安装包,可以看到官网地址 找到download 点击下载 找到老一点的,我们找3.5.7 in the archive 点击 然后这里找到3.5.7这一个 然后下载这个-bin.tar.gz这个...

RTMP的工作原理及优缺点

一.什么是RTMP&#xff1f;RTMP&#xff08;Real-Time Messaging Protocol&#xff0c;实时消息传输协议&#xff09;是一种用于低延迟、实时音视频和数据传输的双向互联网通信协议&#xff0c;由Macromedia&#xff08;后被Adobe收购&#xff09;开发。RTMP的工作原理是&#…...

工业安全监控识别 智慧工业工地安全防护检测数据集的训练及应用 通过训练出的个人安全防护装备检测数据集的权重 推理检测识别人 头 脸部 眼镜 口罩 面罩 马甲 安全帽安全服的检测与识别 穿戴检测数据集

工业安全监控识别 智慧工业工地安全防护检测数据集的训练及应用 通过训练出的个人安全防护装备检测数据集的权重 推理检测识别人 头 脸部 眼镜 口罩 面罩 马甲 安全帽安全服的检测与识别 穿戴检测数据集 文章目录一、数据集情况二、类别编号与名称对照表三、典型应用场景四、适…...

用STM32F103和DHT11做个智能温湿度报警器,附ESP8266远程监控代码

STM32F103与DHT11打造智能环境监测系统&#xff1a;从本地报警到云端监控全解析 在智能家居和工业物联网快速发展的今天&#xff0c;环境监测系统已成为许多创客和开发者入门的首选项目。本文将带你用STM32F103微控制器和DHT11温湿度传感器&#xff0c;构建一个功能完善的智能…...

WSA Toolbox:Windows 11上5分钟搭建Android应用生态的终极指南

WSA Toolbox&#xff1a;Windows 11上5分钟搭建Android应用生态的终极指南 【免费下载链接】wsa-toolbox A Windows 11 application to easily install and use the Windows Subsystem For Android™ package on your computer. 项目地址: https://gitcode.com/gh_mirrors/ws…...

AGENTS.md:为AI编码助手定制的项目说明书,提升人机协作效率

1. 项目概述&#xff1a;为什么你的项目需要一个“AI专属说明书”&#xff1f;如果你最近在尝试用GitHub Copilot、Cursor或者Claude Code来辅助开发&#xff0c;大概率遇到过这样的场景&#xff1a;你满怀期待地给AI下达一个指令&#xff0c;比如“帮我给这个React组件添加一个…...

如何在C++中使用标准库的智能指针

使用标准库的智能指针* 注意&#xff0c;在使用数组的时候需要使用数组的特化版本。#include <iostream> #include <memory>std::unique_ptr<char[]> division(int x, int y) {std::unique_ptr<char[]> sp(new char[100]{});if (y 0) {throw "Pl…...

用HFSS Floquet Port仿真无限大阵列:从单元设计到S参数提取全流程解析

用HFSS Floquet Port仿真无限大阵列&#xff1a;从单元设计到S参数提取全流程解析 在相控阵天线和频率选择表面设计中&#xff0c;工程师常面临一个关键挑战&#xff1a;如何准确评估单个辐射单元在无限大周期阵列环境下的性能表现&#xff1f;传统有限阵列仿真不仅计算资源消耗…...

Windows进程内存操作实战:ClawMem库核心原理与应用指南

1. 项目概述&#xff1a;一个内存操作工具箱的诞生在软件开发和逆向工程领域&#xff0c;对进程内存进行安全、高效、可控的读写操作&#xff0c;是一个既基础又充满挑战的需求。无论是为了调试、分析程序行为&#xff0c;还是为了实现特定的功能扩展&#xff0c;直接与内存打交…...

UVa 215 Spreadsheet Calculator

题目分析 本题要求实现一个简单的电子表格计算器。电子表格是一个矩形网格&#xff0c;每个单元格包含一个整数或者一个表达式。表达式由整数常量、单元格引用以及 和 - 运算符组成&#xff0c;计算时遵循从左到右的结合顺序。 输入首先给出行数 rrr 和列数 ccc&#xff0c;其…...

35岁技术人的“反脆弱”职业策略:越动荡越值钱——软件测试工程师的破局之道

当“质量守门人”遭遇年龄的Bug对于软件测试工程师而言&#xff0c;35岁仿佛是一道无形的自动化脚本&#xff0c;悄然运行在每个人的职业生涯中。它不报错&#xff0c;却实实在在地改变着系统环境。招聘平台上“35岁以下”的潜规则、手工测试岗位的加速萎缩、自动化与AI测试技术…...

从‘一片蓝’到‘五彩斑斓’:手把手教你美化Matlab三维柱状图,让论文图表脱颖而出

从‘一片蓝’到‘五彩斑斓’&#xff1a;科研级Matlab三维柱状图视觉优化全攻略 当审稿人翻开一篇论文时&#xff0c;图表往往是他们最先注意到的元素。我曾参与过多次学术期刊的评审工作&#xff0c;那些配色考究、细节精致的图表总能在第一时间抓住眼球——这不仅仅是审美问题…...