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

c++中基本类型详细解释外加基本运算规则

👀👀#c++中包括算数类型和空类型。

类型含义
wchat_t宽字符
bool布尔类型
char字符
chat16_tunicode字符
chat_32unicode字符
short短整型
int整形
long长整型
longlong长整型
float单精度浮点型
double双精度浮点型
longdouble扩展精度浮点型

👀👀#复合类型:
是基于其他类型定义的类型(引用和指针)。
引用:为对象起一个名字,引用类型引用另外一种类型。通过将声明符写成&d的形式来定义引用类型,其中d是声明的变量名。

int ival =1024;
int &refo =ival;

注释:refo指向ival(是ival的另外一个名字)
👀👀#引用本质就是一个指针变量。
引用一旦初始化后,就不可以再发生改变(不能再引用其他变量)

int a=10;
int c=12;
//编译器自动转化为:int* const b=&b;
//指针常量是指针指向不可以改变,同理证明为什么引用不可以更改
int &b=a;
//int &b=c;(错误写法)

引用需要一个合法的内存空间

//  int &ref=10; 错误写法
//更改方法
const int &ref =10;
//编译器可以优化代码即等价于:
int temp=10;
const int &ref =temp;
//加const以后就不能再更改变量的值了

👀👀#引用传递

#include<iostream>
using namespace std;
void swap(int& a, int& b)
{int temp = a;a = b;b = temp;cout << a << endl;cout << b << endl;
}
int main()
{int a = 10;int b = 20;swap(a, b);return 0;
}

引用传递,形参会修饰实参。(实参也会改变)

👀👀#简单介绍一下const的用法:

const  int * const p =&a;

特点:指针指向和指针指向的值都不可以改变。

int * const p= &a;

指针常量特点:
指针的指向不可以改,指针指向的值可以改变。

const int * p =&a;

常量指针特点:
指针的指向可以修改,但是指针指向的值不可以改变。
👀👀#指针
指针是实现了对其他对象的间接访问。
指针本身就是一个对象,可以指针赋值和拷贝,在指针的生命周期内可以先后指向几个不同对象。指针无需在定义时赋值。
指针值
应该处于4种状态之一
1.指向一个对象
2.指向紧邻对象所占空间的下一个位置
3.空指针,没有指向任何对象
4.无效指针。(其他3种情况之外)
👀👀#void * 指针
特殊类型指针,可以存放任意对象的地址,作为函数的输入和输出、不能直接操作void * 指针所指的对象,(因为不知道所指对象类型)

http://www.lryc.cn/news/27293.html

相关文章:

  • 扬帆优配“机器人+”方案加码产业发展,这些股有望高增长
  • 推送投票制作微信推送里投票制作教程在线投票活动制作
  • 【架构师】跟我一起学架构——微服务分层监控
  • Linux:https静态网站搭建案例
  • 前端css整理
  • 混凝土搅拌站远程监控解决方案
  • Spark SQL 学习总结
  • 深度学习 - 37.TF x Keras Deep Cross Network DCN 实现
  • Ubuntu中使用Synaptic进行包管理
  • python之selenium库安装及用法(定位法、获取文本、文本框输入、鼠标点击、滑动滚动条)
  • FPGA纯verilog实现图像视频旋转 串口指令控制旋转角度 提供工程源码和技术支持
  • EventGraph:Event Extraction as Semantic Graph Parsing 论文解读
  • 【蓝桥杯集训·每日一题】AcWing 3696. 构造有向无环图
  • 国内vs国外:外贸建站该如何选择?
  • HLS协议有哪些特别优势
  • JavaScript里的回调函数属于闭包吗?
  • 编程基本概念
  • Azure OpenAI 官方指南02|ChatGPT 的架构设计与应用实例
  • RK3568核心板以太网大数据测试报告-万象奥科
  • 来 CSDN 三年,我写了一本Python书
  • TIA博途中通过SCL语言实现快速排序的具体方法示例
  • 第 46 届世界技能大赛浙江省选拔赛“网络安全“项目B模块任务书
  • 【C】字符串操作函数
  • 【python】 pytest自动化测试框架--selenium,requests,appium自动化工具
  • Spring boot 实战指南(三):配置事务,整合Elasticsearch、swagger、redis、rabbitMQ
  • 九、Bean的循环依赖问题
  • macOS关闭SIP后,仍无法修改/usr文件夹下文件
  • 【编程基础之Python】8、Python复合数据类型
  • 自动驾驶决策规划-控制方向学习资料总结(附相关资料的链接)
  • 网络安全岗位介绍——售前工程师