【C++】【内附前辈贴】浅谈指针的指针

2024-09-05 00:38
文章标签 c++ 指针 浅谈 内附 前辈

本文主要是介绍【C++】【内附前辈贴】浅谈指针的指针,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先贴一个链接:如何理解指向指针的指针? 然后强调一下,结合前辈有助于消化指针的指针!!

下面博主动手实践,发此学习贴,希望对大家有些许帮助。

  • 首先,定义一下整型常量和整型指针变量:
  • int i = 4 ,j = 6 ,k = 111;
    int *iptr = &i, *jptr = &j;
    next,定义指针的指针(双重指针):
  • int **doublePtr = &iptr;
    
    • 现在指针iptr 指向了i,jptr 指向了 j; *iptr 就是 i,**doublePtr 就是 i,或者说是 4。
    • 下面用我们盒子箭头图来描述,像这样:


  • finally,双重指针令指向jptr :[接着这么写]
  • *doublePtr = jptr;
    
    • 我们把 jptr指向对象地址值赋给 doublePtr 。也就是说 iptr 现在它指向了 j【这个地方最绕!】,指针传递的是实参,相当于iptr所指对象i的地址值被修改成j的地址值,然后按照地址查找对象的值,因而i没变,只是iptr重新指向了一个新的对象而已!而已!




  • 全部代码:
  • /* 功能:Excercise3.5.4 */ 
    #include <iostream>
    using namespace std;
    //定义在全局作用域中
    int main()//定义在局部作用域中的数组
    {int i = 4 ,j =6;int *iptr = &i, *jptr = &j;int **doublePtr = &iptr;cout << "指针iptr所指对象在内存中的地址及对象值分别为:" << iptr << "  " << *iptr << endl;cout << "指针jptr所指对象在内存中的地址及对象值分别为:" << jptr << "  " << *jptr << endl;cout << "指针iptr自身在内存中的地址及值分别为:" << *doublePtr << "  " << **doublePtr << endl;*doublePtr = jptr;cout << "指针jptr自身在内存中的地址及值分别为:" << *doublePtr << "  " << **doublePtr << endl;cout << "最终验证,经过重新指向后,指针iptr所指对象在内存中的地址及对象值分别为:" << iptr << "  " << *iptr << endl;system("pause");return 0;
    }
    贴图验证:打印结果+局部变量截图


这篇关于【C++】【内附前辈贴】浅谈指针的指针的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1137483

相关文章

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

C++作用域和标识符查找规则详解

《C++作用域和标识符查找规则详解》在C++中,作用域(Scope)和标识符查找(IdentifierLookup)是理解代码行为的重要概念,本文将详细介绍这些规则,并通过实例来说明它们的工作原理,需... 目录作用域标识符查找规则1. 普通查找(Ordinary Lookup)2. 限定查找(Qualif

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null

C++/类与对象/默认成员函数@构造函数的用法

《C++/类与对象/默认成员函数@构造函数的用法》:本文主要介绍C++/类与对象/默认成员函数@构造函数的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录名词概念默认成员函数构造函数概念函数特征显示构造函数隐式构造函数总结名词概念默认构造函数:不用传参就可以

C++类和对象之默认成员函数的使用解读

《C++类和对象之默认成员函数的使用解读》:本文主要介绍C++类和对象之默认成员函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、默认成员函数有哪些二、各默认成员函数详解默认构造函数析构函数拷贝构造函数拷贝赋值运算符三、默认成员函数的注意事项总结一

C/C++中OpenCV 矩阵运算的实现

《C/C++中OpenCV矩阵运算的实现》本文主要介绍了C/C++中OpenCV矩阵运算的实现,包括基本算术运算(标量与矩阵)、矩阵乘法、转置、逆矩阵、行列式、迹、范数等操作,感兴趣的可以了解一下... 目录矩阵的创建与初始化创建矩阵访问矩阵元素基本的算术运算 ➕➖✖️➗矩阵与标量运算矩阵与矩阵运算 (逐元

C/C++的OpenCV 进行图像梯度提取的几种实现

《C/C++的OpenCV进行图像梯度提取的几种实现》本文主要介绍了C/C++的OpenCV进行图像梯度提取的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录预www.chinasem.cn备知识1. 图像加载与预处理2. Sobel 算子计算 X 和 Y

C/C++和OpenCV实现调用摄像头

《C/C++和OpenCV实现调用摄像头》本文主要介绍了C/C++和OpenCV实现调用摄像头,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录准备工作1. 打开摄像头2. 读取视频帧3. 显示视频帧4. 释放资源5. 获取和设置摄像头属性

c/c++的opencv图像金字塔缩放实现

《c/c++的opencv图像金字塔缩放实现》本文主要介绍了c/c++的opencv图像金字塔缩放实现,通过对原始图像进行连续的下采样或上采样操作,生成一系列不同分辨率的图像,具有一定的参考价值,感兴... 目录图像金字塔简介图像下采样 (cv::pyrDown)图像上采样 (cv::pyrUp)C++ O