变量和基本类型

这篇博客介绍了C++中的基本概念,包括输出控制、变量的作用域、引用和指针的使用。通过示例代码解释了指针如何存储内存地址,引用作为对象别名的特性,以及指针的赋值和解引用操作。同时,文章提到了空指针`nullptr`,指针常量和底层常量的概念,帮助理解C++中的指针和引用差异。
摘要由CSDN通过智能技术生成
#include<iostream>
using namespace std;
int main()
{
	cout<<"2\n";//输出2,换行
	cout<<"2\tM\n";//输出2,制表,输出M,换行
	return 0;
}

注意有转义字符的话要用”“

#include<iostream>
using namespace std;
int i=2;
int main()
{
	int i=3;
	cout<<i<<endl;
	return 0;
}

//3

内层作用域可以重新定义外层已有的名字

#include<iostream>
using namespace std;
int i=2;
int main()
{
	int i,&ri=i;
	i=5,ri=10;
	cout<<i<<" "<<ri<<endl;
	return 0;
}

引用:不是对象,只是为对象起了一个名字,所以实际过程是:5赋给i,再把i更新为10

#include<iostream>
using namespace std;
int i=2;
int main()
{
	int i=1,j=2;
	int *p=&i;
	cout<<p<<" "<<*p<<endl;//p为所指对象的内存地址
	p=&j;
	cout<<p<<" "<<*p<<endl;//
	j=20;
	cout<<p<<" "<<*p<<endl;//
	*p=10;//显示更改,不能p=10,因为p是地址,*p=10指的是p指向10
	cout<<p<<" "<<*p<<endl;//
	return 0;
}

结果:

0019FF2C 1
0019FF28 2
0019FF28 20
0019FF28 10
Press any key to continue

指针和引用的区别

指针(指向)引用(绑定到)共同点

1.是一个对象,在定义时不需要赋初值(指向一个不确定的地址),生命周期内可指向不同对象

1.不是对象,只是为变量取新名字,必须赋初值

实现间接访问
2.可赋值2.无法绑定到另一个对象

nullptr:空指针,地址为0,如果不清楚指针指向何处,定义的时候指向nullptr或0

        int i = 20;void *p = &i;

合法,因为void*p是一种特殊的指针类型,可以存放任意对象的地址

        int *const p = &i;

p是一个常量指针,即值不变,永远指向i,因为是常量,所以必须初始化

顶层const :指针本身是一个常量

底层const:指针所指对象是一个常量

以上为《C++primer习题集》笔记

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

跳坑坑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值