登录  /  注册
c++ - 关于二维数组在内存中的存在形式的问题
PHPz
PHPz 2017-04-17 15:37:18
[C++讨论组]

书上说二维数组在内存中实际是以一维数组的形式连续存放的,我做了个小测试结果却令我无法理解。

#include <iostream>
using namespace std;

int main() {
    int a[2][2] = {{0,1},{2,3}};
    cout << &a << endl;
    cout << a << endl;
    cout << *a << endl;
    cout << a[0] << endl;
    cout << **a << endl;
    cout << *(a[0]) << endl;
    return 0;
}

输出:

0x7fff396c0210
0x7fff396c0210
0x7fff396c0210
0x7fff396c0210
0
0

那个内存地址处保存的是自己的地址?那么两次解引用不应该还是这个地址才对吗?怎么会变成0???

PHPz
PHPz

学习是最好的投资!

全部回复(2)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号