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

简介: 类型 含义wchat_t 宽字符bool 布尔类型char 字符chat16_t unicode字符chat_32 unicode字符short 短整型int 整形long 长整型longlong 长整型float 单精度浮点型double 双精度浮点型longdouble 扩展精度浮点型

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

类型 含义
wchat_t 宽字符
bool 布尔类型
char 字符
chat16_t unicode字符
chat_32 unicode字符
short 短整型
int 整形
long 长整型
longlong 长整型
float 单精度浮点型
double 双精度浮点型
longdouble 扩展精度浮点型
👀👀#复合类型:
是基于其他类型定义的类型(引用和指针)。
引用:为对象起一个名字,引用类型引用另外一种类型。通过将声明符写成&d的形式来定义引用类型,其中d是声明的变量名。

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

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

1
2
3
4
5
6
7
引用需要一个合法的内存空间

// int &ref=10; 错误写法
//更改方法
const int &ref =10;
//编译器可以优化代码即等价于:
int temp=10;
const int &ref =temp;
//加const以后就不能再更改变量的值了
1
2
3
4
5
6
7
👀👀#引用传递

include

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;

}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
引用传递,形参会修饰实参。(实参也会改变)

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

const int * const p =&a;
1
特点:指针指向和指针指向的值都不可以改变。

int * const p= &a;
1
指针常量特点:
指针的指向不可以改,指针指向的值可以改变。

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

目录
相关文章
|
5月前
|
存储 算法 数据库
【C++ 软件设计思路】学习C++中如何生成唯一标识符:从UUID到自定义规则
【C++ 软件设计思路】学习C++中如何生成唯一标识符:从UUID到自定义规则
296 0
|
5月前
|
编译器 程序员 API
【C++ auto推导】C++中的auto关键字及其推导规则
【C++ auto推导】C++中的auto关键字及其推导规则
118 0
|
5月前
|
安全 编译器 C++
【C/C++ 类型转换规则】一文了解C/C++ 中的类型转换规则,帮助你更好的编程
【C/C++ 类型转换规则】一文了解C/C++ 中的类型转换规则,帮助你更好的编程
62 0
|
5月前
|
C++
C++程序中的关系运算
C++程序中的关系运算
45 1
|
5月前
|
C++
C++程序中的逻辑运算
C++程序中的逻辑运算
42 1
|
4月前
|
编译器 C++
《Effective C++ 改善程序与设计的55个具体做法》 第二章 构造/析构/赋值运算 笔记
《Effective C++ 改善程序与设计的55个具体做法》 第二章 构造/析构/赋值运算 笔记
|
5月前
|
存储 C++
C/C++中的整数除法运算与汇编指令DIV和IDIV
C/C++中的整数除法运算与汇编指令DIV和IDIV
87 1
|
5月前
|
算法 C++
c++算法学习笔记 (4)高精度运算
c++算法学习笔记 (4)高精度运算
|
5月前
|
存储 人工智能 编译器
【重学C++】【指针】一文看透:指针中容易混淆的四个概念、算数运算以及使用场景中容易忽视的细节
【重学C++】【指针】一文看透:指针中容易混淆的四个概念、算数运算以及使用场景中容易忽视的细节
82 1
|
5月前
|
C语言 C++
C++|运算符重载(2)|运算符重载的方法与规则
C++|运算符重载(2)|运算符重载的方法与规则