首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于输出?解决方案

2012-03-27 
关于输出?#include iostreamusingnamespacestdintmain(){inta[5]{1,2,3,4}cout a+1 endl//a+1

关于输出?
#include <iostream>

using   namespace   std;

int   main()
{
    int   a[5]={1,2,3,4};
   
    cout < <a+1 < <endl;//a+1表示的是什么?
    cout < <&a+1 < <endl;//&a+1表示的是什么?

    system( "pause ");
    return   0;
}

[解决办法]
a+1 a中第二个元素地址
&a+1,&a类型为指向5个int数组的指针,所以&a+1相当与a的值加5个int指针的大小,值等于a+5
[解决办法]
a的值加5个int指针的大小,值等于a+5 ===> a的值加5个int的大小,值等于&a[5]
[解决办法]
a+1表示 &a[1];
&a+1表示 &a[1][0]; //如果a为一维数组&a+1没有意义

[解决办法]
第二个地址相加是不确定的
你做个二维数组相加输出就知道了

热点排行