位置: IT常识 - 正文

C++指针与其它复合类型(c++如何给指针赋值)

编辑:rootadmin
C++指针与其它复合类型

目录

前言:

1.指针与字符串

1.1cout接收char类型的地址的反应

1.2字符串字面值

1.3字符串备份

2.使用new创建动态结构

3.使用new和delete搭配存储键盘输入的字符串


前言:

推荐整理分享C++指针与其它复合类型(c++如何给指针赋值),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:c++中的指针,c++指针用处,c++指针举例,c++中的指针怎么理解,c++ 指针的指针,c++ 指针 赋值,c++指针和c指针不同,c++指针操作符,内容如对您有帮助,希望把文章链接给更多的朋友!

  指针我们已经知道如何使用了,也知道指针和数组配合起来使用,这次我们来讲讲指针与字符串,以及指针和动态结构的一些知识。

1.指针与字符串1.1cout接收char类型的地址的反应

  我们知道字符数组的数组名是首字符的地址,当我们用cout工具来显示字符数组里的字符串的时候,无疑是把首地址传给cout了。cout将顺着这个地址依次往下打印,当它遇到字符串的结束标志时,就停下来不打印了。

  所以我们就知道,cout在打印字符串的时候,接收的是一个字符的地址,并认为我们是要它打印一个字符串,为了与cout对字符串输出的处理保持一致,引号括起来的字符串也应当是一个地址。

1.2字符串字面值

  双引号括起来的字符串是常量字符串,是一个不能被修改的值,一般出现在用字符指针来接收常量字符串的首字符地址。但我们知道,字符串还可以给字符数组初始化,但内容可以被修改,大家注意区分。

  对bird指针进行const修饰,使得代码更加健壮,当发现错误时,主动抛出错误。

C++指针与其它复合类型(c++如何给指针赋值)

  对指向常量字符串的字符指针进行输入是错误的:

有些编译器将字符串字面值视为只读常量,如果修改了它们,编译器将会报错。在C++中,字符串字面值都被视为常量,而有一些编译器并没有改过来,仍可以对其进行修改。有些编译器只使用一个字符串字面值副本来为程序使用。

  补充:C++不能保证字符串字面值被唯一得存储。

1.3字符串备份

  

  怎么将一个字符串给存起来呢?首先我们可以想到用数组,但这个数组如果是静态的话缺点很多,所以我们考虑用new创建一个动态数组,将其地址返回个一个字符指针管理更好。

  在C++中strlen、strcpy的头文件是<cstring>,使用方法和C语言里的一样。

  这里还需要首的一点就是在开辟动态数组时,元素个数的确定+1的问题。因为我们计算字符串长度的时候,空字符是不算内容的,但表示一个字符串,结尾必须有空字符,我们加上这个单位空间,就是给空字符留的。

2.使用new创建动态结构

 创建动态结构和前面的都很相似,我注释里说明清楚啦,这里就不再赘述啦。

  关于为动态结构成员赋值,我们需要使用cin和cin.get()工具分别为变量和字符数组赋值,这一点很重要。可不敢直接像C一样p->name = "张三";如果不是很懂cin.get()请跳转:

链接:《认识C++字符串符合类型》

  而如何访问到结构成员呢?首先p是一个指向结构体的指针,指针通过箭头操作符可以轻松访问到结构体成员。这里读者可能也很好奇,为啥没有结构名称的结构体可以通过(*p).成员名来访问。博主经过一番学习,总结经验,认为是因为内存单元是唯一性的原因。我们知道,两个没有名称的结构体,即使成员一模一样,在

本文链接地址:https://www.jiuchutong.com/zhishi/299652.html 转载请保留说明!

上一篇:【机器学习面试总结】————(一)

下一篇:使用Python批量旋转,镜像图片(python 批量)

  • 社保阶段性减免延长到年底
  • 利润表的调整
  • 银行电子回单是原始凭证吗
  • 发票开工程服务和工程款的区别
  • 合伙企业对外长期股权投资收到分红 怎么处理
  • 递延收益负债类科目
  • 品种法怎么计算在产品成本
  • 库存商品进项税额转出分录怎么写
  • 无形资产增资需要缴纳个税吗
  • 土地税退税做什么分录
  • 办理异地租房提取公积金流程
  • 买卖汇票是什么意思
  • 融资租赁主营业务收入如何确认
  • 资产负债表金额越来越大代表什么
  • 承租人对融资租赁业务核算有哪些主要内容
  • 销售原材料的账务处理
  • 轿车计提折旧
  • 公司租的房子免租金要交房产税吗?
  • 工程开票是否需要资质?
  • 在固定资产中
  • 房屋修缮费交增值税吗
  • 票开了但是没有发票
  • 购物预付卡怎么用
  • 酒店优惠券财务如何记账?
  • 腾讯手游助手怎么卸载
  • 公司购车要交哪些税
  • 装win7ahci
  • pdf.js原理
  • 银边翠的栽培历史
  • inputtypefile 文件名
  • php fgets
  • 技术股如何分红交易
  • 酒店没有营业执照可以举报吗?
  • three.js 教程
  • 购买货物收到发票财务报表怎么提现
  • 销售费用属于损益类科目的收入还是费用
  • 老税号的发票还能认证吗
  • yolov5 output
  • tsconfig baseurl
  • web2.0核心
  • 公司发放工作服账务处理
  • python的多进程模块
  • java守护线程和本地线程区别
  • 织梦网站停止使用了还侵权吗
  • 银行会计核算方法的特点
  • 委外加工如何管理
  • 免税收入不征税收入计入收入总额吗
  • 银行汇票计入什么会计科目
  • 存货价值的计算公式
  • 关于事业支出期末的结转
  • 疫情防控重点保障企业名单
  • 基本户怎么提现金
  • 企业如果为员工缴纳社保
  • 信用减值损失科目代码6702
  • 其他应收款减值损失可以转回吗
  • 小加工厂怎么开发票
  • 进项发票超过期限不认证怎么办
  • 融资租赁具体操作流程
  • 递延收益为什么属于负债
  • windows性能监视器横坐标
  • 面向小微企业
  • Ubuntu上安装jdk
  • win10如何打开管理
  • mac上怎么查看qq聊天记录
  • ServiceLayer.exe - ServiceLayer是什么进程 有什么用
  • win8.1无线网
  • win10取消uac
  • kb3150220安装失败
  • redhat 6.5 安装
  • bat脚本延迟执行命令
  • openglvbo
  • 什么是馥芮白
  • 2024年全年计划
  • 谈谈关于中华文明的五个突出特性
  • python程序讲解
  • unity3d导出fbx文件
  • jquery easy ui
  • 房产税从价计征税率
  • ipadpro关税多少
  • 经营网络订单可以退款吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设