您当前的位置: 首页 >  c++

RuiH.AI

暂无认证

  • 0浏览

    0关注

    274博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C++学习 六、指针

RuiH.AI 发布时间:2022-01-29 22:14:57 ,浏览量:0

C++学习 六、指针
  • 前言
  • 指针与地址
  • 指针使用
    • 声明指针
      • 指针变量的创建细节
    • 取地址符
    • 初始化
    • 赋值
      • 指针的整形赋值
    • 算术运算
    • 指针解引用(取值运算符)
      • 区分指针类型与解引用
    • 动态内存分配
      • 动态数组
      • 动态内存释放
    • 数组名与指针
    • 指针数组与数组指针
      • 指针数组
      • 数组指针
      • 对数组取地址
    • 指针与字符串
  • 后记

前言

指针是C,C++与其它语言的一大区别,也是C++程序设计里的难点。

本篇学习C++指针的基本用法。

指针与地址

地址是内存空间的位置,指针是保存地址的特殊数据类型。

广义的说,指针就是地址,指针变量用于存储地址。

狭义的说,地址就是内存空间的编号,而指针有具体的存储数据类型(比如int *p;),因此指针不完全是地址。

指针使用 声明指针

声明指针必须说明是指向什么数据类型的指针(这样才能确定数据在内存空间的使用量):

int *p_int;
double *p_double;
指针变量的创建细节

声明指针时,计算机会给指针变量分配内存空间用于存储地址,但是不会给指针指向的数据分配内存空间,下面的使用方法将报错:

int *p_n;
*p_n = 0;

声明指针p_n时,系统给p_n分配了内存空间,其地址为addr1,存储的是p_n;但系统没有在p_n存储的地址addr2分配空间,因此addr2是个未定值,系统不知道把0放到哪个地址上,因而报错。

取地址符

&被用于取得变量的地址:

int variable = 0;
std::cout             
关注
打赏
1658651101
查看更多评论
0.7216s