初入C++的新手笔记(5)--指针(初识)

本文介绍了内存的基本概念,如地址线和内存单元编号,强调了指针作为内存地址的存储变量。重点讲解了指针的使用示例,包括指针运算、解引用操作以及不同数据类型指针占用的内存大小。最后概述了指针在程序中的核心作用——间接修改变量值。
摘要由CSDN通过智能技术生成

初识指针

内存

内存是计算机的重要的存储器,计算机中所有程序的运行都在内存中进行。

使用计算机时,将内存分为多个小的空间,进行高效的管理和使用。

  1. 内存的编号

常用计算机有32位的、有64位的。以32位举例。

32位是指有32根地址线,地址线是物理层面的线,可通正负电,正电为1,负电为0。电信号转换为数字信号,形成0和1组成的二进制序列。

32个二进制位,每一位是0或1,会2的三十二次方种组合,如

00000000000000000000000000000000(32个0)

......

11111111111111111111111111111111(32个1)

这样的每一个内存单元给一个这样的地址,也是内存单元编号。

另:一个内存单元为一个字节(1 byte)

%p可以打印地址

指针是内存地址,指针变量是用来存放内存地址的变量

示例:

int main()

{

int a=10;

printf(“%p\n”,&a);

int * pa=&a;

retuern 0;

}

ps:

1.printf打印出a的地址,a是int整型,所以在内存中占四个字节。

2.pa是用来存放地址的,这里的pa叫做指针变量。(pa只是变量名称)

3.*  使用来说明pa是指针变量。

4.int说明pa执行的对象是int类型的。

5.指针可以存放自己的地址(套娃了属于是),当然也说明指针变量是有自己的地址的。

6.可以通过调试--窗口--内存,查看内存地址(地址后面位数编号为十六进制)

指针使用的意义/作用

int main()

{

 int a=10;

 int * pa=&a;

 *pa =20;

pintf(“%d\n”,a);

return 0;

}

蓝字*是解引用操作,因为pa是指针变量,存了a的地址,蓝字*pa就是通过pa里的地址找到a。是一种间接的改变,借助于pa去改变a的量。

可以用printf打印出各个数据类型中指针所占内存大小,有4字节,有8字节。(不同位数的计算机显示的不一样,编译器设置可以改变是64位(x64)还是32位(x86))32位 -32bit-4字节,64位-64bit-8字节。

指针是用来存地址的,所以指针所占的空间取决于地址所占的空间。

本次只是初步的认识了解指针,之后会有详细的学习内容。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值