news 2026/6/2 16:08:39

C++中string与char的全面解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++中string与char的全面解析

一、char(字符)

1.1 基本概念

char是C++中的基本数据类型,用于表示单个字符。

charc='A';// 单个字符用单引号charzero='0';// 字符'0',ASCII值为48charspace=' ';// 空格字符charnewline='\n';// 转义字符

1.2 重要特性

  • 大小:通常1字节(8位)
  • 范围:-128 到 127(有符号)或 0 到 255(无符号)
  • 本质:实际上是整数(存储字符的ASCII码)
charc='A';cout<<c<<endl;// 输出: Acout<<(int)c<<endl;// 输出: 65(ASCII值)cout<<c+1<<endl;// 输出: 66(整数运算)

1.3 字符数组(C风格字符串)

charstr1[]="Hello";// 自动包含'\0'charstr2[6]={'H','e','l','l','o','\0'};char*str3="Hello";// 字符串字面量(C++11后不建议)

二、string(字符串类)

2.1 基本概念

std::string是C++标准库提供的字符串类(需要包含<string>)。

#include<string>usingnamespacestd;string s1="Hello World";strings2("C++ String");string s3=s1;// 复制构造

2.2 重要特性

  • 动态内存管理:自动调整大小
  • 丰富的成员函数:提供各种字符串操作
  • 安全性:比C风格字符串更安全(避免缓冲区溢出)
  • 可操作性:支持运算符重载(+、==、<等)

三、string与char的转换

3.1 char数组 → string

charcharArray[]="Hello";string str=charArray;// 隐式转换stringstr2(charArray);// 显式构造stringstr3(charArray,3);// 只取前3个字符:"Hel"

3.2 string → char数组

string str="Hello";// 方法1:c_str() - 返回const char*
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 9:43:57

java_ssm112考研交流平台_idea项目源码

目录具体实现截图项目概述技术栈核心功能创新点应用价值系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;具体实现截图 项目概述 Java_SSM112考研交流平台是一个基于SSM&#xff08;SpringSpringMVCMyBatis&am…

作者头像 李华
网站建设 2026/5/30 9:45:18

节点小宝实现飞牛NAS与群晖NAS互通实操指南

1. 背景与核心痛点 在多地协同办公场景中&#xff0c;跨网络连接 NAS 资源通常面临以下限制&#xff1a; 无公网 IP&#xff1a;大多数家庭及公司宽带仅提供大局域网 IP&#xff0c;常规 DDNS 方案失效。内网穿透瓶颈&#xff1a;传统的穿透服务往往需要中转服务器&#xff0…

作者头像 李华
网站建设 2026/5/30 18:49:16

java_ssm3Web的篮球CBA联赛信息管理系统

目录具体实现截图篮球CBA联赛信息管理系统摘要系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;具体实现截图 篮球CBA联赛信息管理系统摘要 该系统基于Java SSM&#xff08;SpringSpringMVCMyBatis&#xff09…

作者头像 李华
网站建设 2026/5/28 17:48:45

621-0010-AR模拟输出模块

621-0010-AR 模拟输出模块 621-0010-AR 是工业控制系统中的 高级模拟输出模块&#xff0c;主要功能是将控制器或逻辑单元发出的数字信号转换成精确的模拟电流或电压信号&#xff0c;驱动现场执行器设备&#xff0c;实现连续过程控制。 核心作用 数字信号转换&#xff1a;把控…

作者头像 李华
网站建设 2026/6/1 5:58:10

621-0022-AR隔离分析输入模块

621-0022-AR 隔离分析输入模块621-0022-AR 是工业控制系统中的 隔离分析输入模块&#xff0c;主要用于采集现场的模拟信号&#xff0c;并通过隔离技术保护控制系统&#xff0c;同时保证数据的准确性和稳定性。它适用于需要高精度测量和信号保护的工业应用场景。核心作用信号采集…

作者头像 李华
网站建设 2026/5/30 7:31:41

DeepSeek+LangChain+DeepDiff:智能测试数据自动对比工具

在日常的测试工作中&#xff0c;我们在测试数据对比时经常会遇到以下难题&#xff1a; 对比的差异结果缺少清晰的可视化呈现&#xff1b; 两个表处于不同的数据库中&#xff0c;增加了对比难度&#xff1b; 源表和目标表字段数量众多&#xff0c;业务逻辑复杂&#xff0c;手动…

作者头像 李华