标题:实验数组名和指针差异时遇到的问题,求解答,谢谢
只看楼主
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);
}
搜索更多相关主题的帖子: 指针 int cout 显示 地址 
2019-01-27 01:35
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册: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



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-492860-1-1.html




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

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