| |
|
开发:
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++ 指针笔记(基本定义、注意事项、空指针、野指针、const修饰指针) -> 正文阅读 |
|
[C++知识库]C++ 指针笔记(基本定义、注意事项、空指针、野指针、const修饰指针) |
指针指针在程序中起到传递变量地址、优化内存调用的作用,为变量/对象声明指针后,指针承载了变量/对象的内存地址。这样一来,当我们需要访问该变量/对象的内存时,可以简单地对指针解引用,避免了内存重复调用,节省空间。 定义指针时,语法规则为:数据类型 * 指针变量名 使用指针时,可以解引用:在指针前加 * 表示解引用 在32位操作系统下,指针占用4个字节的内存空间;而64位操作系统下,占用8个字节空间。(无关数据类型) 指针的注意事项a. 指针指向常量存储区对象 指针指向常量储存区的对象时,由于为常量(常量一经声明无法更改值),故无法对该对象进行写操作。 b. 资源泄露
如上执行时,由于资源泄露会报错或卡住。改进如下:
*strcpy()函数用于字符串复制,用法是传入2个字符数组指针来执行,如strcpy(a,b)是将b指向的字符串复制到a指向的空间中。有关于strcpy()及其安全版本strcpy_s()函数使用的注意事项,请点此处跳转 空指针空指针在指针变量初始化时可作“临时占位符”,即当不指定指针所指向的内存地址时,空指针指向编号为0的内存。空指针也叫“NULL”。 注意:不可访问空指针所指定的内存(若访问,会报错。) 注意:编号0-255为系统预留内存。 野指针野指针指的是由于强行数据转换等原因直接指向某一个未获得访问权限的内存空间的指针。在编写程序时应尽量避免生成野指针。 野指针的成因如下: 1)指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存。
2)指针p被free或者delete之后,没有置为NULL,让人误以为p是个合法的指针。
3)指针操作超越了变量的作用范围。? ?
|
|
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年12日历 | -2024/12/29 4:39:30- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |