c++ 求教!定义一个数组和指针变量,利用指针变量给数组赋值后,分别利用数组名下标法,指针下标法,数

c++求教!定义一个数组和指针变量,利用指针变量给数组赋值后,分别利用数组名下标法,指针下标法,数组名+整数指针法,指针+整数指针法来显示该数组... c++ 求教!定义一个数组和指针变量,利用指针变量给数组赋值后,分别利用数组名下标法,指针下标法,数组名+整数指针法,指针+整数指针法来显示该数组 展开
 我来答
lxllee
推荐于2018-04-07 · TA获得超过217个赞
知道小有建树答主
回答量:106
采纳率:0%
帮助的人:58.3万
展开全部
//满意么?
#include<iostream>
using namespace std;

int main()
{
int ab[10] = {1,2,3,4,5,6,7,8,9,0};
int *p_ab = ab;
for(int i = 0; i < 10; i++) //数组名下标法
cout<<ab[i];
cout<<endl;
for(int i = 0; i < 10; i++) //指针下标法
cout<< p_ab[i];
cout<<endl;
for(int i = 0; i < 10; i++) //数组名+整数指针法
cout<< *(ab+ i);
cout<<endl;
for(int i = 0; i < 10; i++) //指针+整数指针法来显示该数组
cout<< *(p_ab + i);
cout<<endl;
return 0;
}
zxc2012345
2012-03-12 · 超过19用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:53.8万
展开全部
楼上有具体例子;
我来说一下该问题的本质;
首先,楼主要知道:指针就是地址;地址就是指针;
其次,数组名是该数组的首地址;毫无疑问,它也是个指针;而且相当于是个指针常量(即永远指向该数组,不可对它赋值);
所以,用数组名和用指针访问数组本质是一样的;
最后,也是最关键的楼主只要知道以下知识点,可以秒杀一切该类问题:
当我们用一个数组名+数字来访问某一块内存中的数据时,如:a[ 2 ];
编译器是这样编译的:a[ 2 ] == *( a+2 );
那么,楼主,你说这两种访问数组的方式本质上是不是一样的呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tangrong2
2012-03-12 · TA获得超过768个赞
知道小有建树答主
回答量:540
采纳率:100%
帮助的人:280万
展开全部
int a[10] = {0};
int *p = a;
a[0] = 1;
*p = 2; //a[0] = 2
*(p + 1) = 3; //a[1] = 3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-03-13
展开全部
这个书上有的。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式