asdasd3251 2025-03-27 21:52 采纳率: 0%
浏览 11

详细解答一下这个二级指针问题求

img


这个二级指针str2和str3怎么得到的 搞不懂这个二级指针的内部逻辑

  • 写回答

3条回答 默认 最新

  • 道友老李 JWE233286一种基于机器视觉的水表指针读数识别及修正的方法 专利发明者 2025-03-27 21:52
    关注
    让【道友老李】来帮你解答,本回答参考gpt编写,并整理提供,如果还有疑问可以点击头像关注私信或评论。
    如果答案让您满意,请采纳、关注,非常感谢!
    img 二级指针`str2`和`str3`是通过声明一个指向指针的指针变量来得到的。简单来说,一级指针指向一个内存地址,而二级指针指向一个指针变量的内存地址。 实现代码如下所示:
    #include <iostream>
    int main() {
        // 定义一个字符指针,并初始化为指向字符串"Hello"的首地址
        char* str1 = "Hello";
        // 定义一个指向字符指针的指针
        char** str2 = &str1;
        // 定义一个指向指向字符指针的指针的指针
        char*** str3 = &str2;
        // 输出结果
        std::cout << "str1: " << str1 << std::endl;
        std::cout << "str2: " << *str2 << std::endl;
        std::cout << "str3: " << **str3 << std::endl;
        return 0;
    }
    

    上述代码中,char* str1 = "Hello"; 定义了一个指向字符的指针str1指向字符串"Hello"的首地址。然后通过 char** str2 = &str1; 定义了一个指针str2指向指针str1的地址,char*** str3 = &str2; 定义了一个指向指针str2的指针str3。通过*str2**str3即可访问到str1指向的字符串内容。 希望能帮助您理解二级指针的内部逻辑。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月27日