| |
|
开发:
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++知识库]C++指针 |
1、指针的基本概念 作用:通过指针间接访问内存 注:内存编号是从0开始记录的,一般用十六进制数字表示;可以利用指针变量保存地址(指针就是一个地址) 2、如何定义和使用一个指针 语法:数据类型*指针变量名; 注:p是一个地址,而*p是一个数据,这是通过解引用的方式(指针前加*号)来找到内存中的数据 例:
输出结果: a的地址为:00BCF920 a的值为:10 3、指针所占内存空间 在32位操作系统(x86)下,一个指针变量所占空间是4个字节;64位(x64)下占8个字节 4、空指针和野指针 空指针:指针变量指向内存中编号为0的空间 用途:初始化指针变量 注意:空指针指向的内存不可以访问(0~255之间的内存编号是系统占用的,因此不可以访问) 野指针:指针变量指向非法的(未申请的)内存空间 5、const修饰指针(帮助理解:const后面是啥,啥就被锁定了) 三种情况: 1)const修饰指针---常量指针 特点:指针的指向可以修改,但指针指向的值不可以改(不能通过指针更改内存中的值)
释:const后面是int*p这个值,所以值被锁定不可更改,但地址可以更改 2)const修饰常量---指针常量? 特点:指针的指向不可以改,指针指向的值可以改
释:const后面是p这个指针地址,所以地址被锁定不可更改,但值可以更改 3)const既修饰指针又修饰常量
6、指针和数组 作用:利用指针访问数组里的元素
输出结果:1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 ?10 7、指针和函数 作用:利用指针做函数参数,可以修改实参的值
输出结果: a的值为:20 注:*p只有在定义时可以看作是地址(数据类型int一出现,其实就是在为*p这个值申请一段内存空间,所以将&a和&b赋给int*p是可行的) 综合提升案例: 案例描述:封装一个函数,利用冒泡排序,实现对整型数组{4,3,6,9,1,2,10,8,7,5}的升序排列
输出结果: 1 |
|
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 11:22:03- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |