| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> 指针及指针变量的初步理解(一) -> 正文阅读 |
|
[C++知识库]指针及指针变量的初步理解(一) |
指针,顾名思义是指:指向某一个事物。在C语言里,指针可以简单的认为是指向变量的地址。 (1)在此之前,我们先认识两个概念:变量的地址,变量的值;编译器根据程序中定义变量的类型确定器所占空间的大小,然后返回分配的内存空间的首地址作为该变量的地址;而在变量所占存储单元中所存放的数据或值则为该变量的值; (2)然后我们来认识一下对变量的访问方式:直接寻址,间接寻址;直接寻址,顾名思义就是使用变量名或使用变量的地址都可以直接引出变量的值;间接寻址:即通过某些中间商来访问变量。例如:int a=10;直接用变量名a表示变量的值就是直接寻址;而用地址访问就得先获取该变量的地址,此时需用到&,&a表示变量a在内存中所占存储单元的首地址(无需关心变量的值是多少),此时我们将&a赋给另一个变量p,p=&a,这就是间接寻址,即先通过访问变量p来获得a的地址值,然后再到该地址值代表的存储单元中去访问变量a。而这里我们将通过p引出我们本节的主角:指针。p不是普通的变量,它是特殊类型的变量,即指针类型的变量,简称指针变量,指针变量是C语言中专门用来存放地址型数据类型的变量。这种通过指针变量间接存放它所指向的变量的值的访问方式,称为间接寻址。 (3)认识了指针变量后,应该如何通过指针变量访问它所指向的变量的值呢?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?接下来,先来认识两个单目运算符:&,* ;取地址运算符&用于得到变量的地址;指针运算符*?也称间接寻址运算符或解引用运算符,它是为了得到一个指针所指变量的值;例如p=&a,是获得变量a的地址;而*p=&a,则获得了变量a的值;但是,对变量进行解引用之前,要求指针已被正确初始化或者已经确认它已指向某个确定的内存单元,否则将引起一个致命的运行时错误,或意外篡改内存中的重要数据 (4)归纳总结: 指针变量是存储变量的地址,指针指向的就是变量的地址,通过指针变量间接存取它所指向的变量的值则是间接寻址,如果要得到变量的值则需要对该指针变量进行解引用。重中之重是,解引用之前,一定要对指针变量进行初始化 下一节我将分享如何对指针变量进行初始化,本人才疏学浅,如有错误,请指正。 ? |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 12:04:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |