| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
乐学 会学 多求 善思千里之行 始于足下
共有 152 人关注过本帖
标题:实验数组名和指针差异时遇到的问题,求解答,谢谢
只看楼主 加入收藏
caosule
Rank: 1
等 级:新手上路
帖 子:4
专家分:4
注 册:2018-11-23
结帖率:100%
  已结贴   问题点数:20  回复次数:2   
实验数组名和指针差异时遇到的问题,求解答,谢谢
问题是红色字体哪儿,求解答,谢谢。
void fun(int *ca)
{
    cout << &ca << endl << &ca[0] << endl<< &(ca[1]) << endl<<(++ca) << endl; //(++ca)显示的为什么是a[0]地址?
}
void fun2(int *ca)
{
    cout << &ca << endl;//显示指针地址
    cout << &ca[0] << endl;//显示a[0]地址
    cout << &(ca[1]) << endl;//显示a[1]地址(第一个+int长度)
    cout<<(++ca) << endl;//显示a[1]地址
}
int main()
{
    int a[6] = { 1,2,3,4 };
    fun(a);
    fun2(a);
}
附件: 您没有浏览附件的权限,请 登录注册
2019-01-27 01:35
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:285
帖 子:6093
专家分:35049
注 册:2011-1-18
  得分:20 
cout << &ca << endl << &ca[0] << endl<< &(ca[1]) << endl<<(++ca) << endl;
中,你知道是先评估&ca等,还是先执行++ca?
我是不懂,因为C++没规定。
2019-01-27 11:55
caosule
Rank: 1
等 级:新手上路
帖 子:4
专家分:4
注 册:2018-11-23
  得分:0 
回复 2楼 rjsp
谢谢回答。
我刚学c++两个月。
也没百度到什么答案,只能先笔记一下了。
2019-01-28 18:43







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042892 second(s), 8 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved