在c语言中,当我定义好一个指针后,可不可以将这个指针直接指向数组的末尾?

 我来答
和丽华曲丁
2019-06-22 · TA获得超过2.9万个赞
知道大有可为答主
回答量:9887
采纳率:32%
帮助的人:977万
展开全部
可以。指针可以指向任何地方,但指向后能不能写就是另外一回事了。比如:
p=&a[9]
可以用*p=10写内存,但是
p=&a[9]+1
就不一定能用
*p=10来写该地址的内存了。
枚高阳蒯玛
2019-10-23 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:31%
帮助的人:773万
展开全部
在c语言中,当把数组名赋值给指针时,那么该指针指向数组的第一个元素,也就是该指针变量存放的是数组第一个元素的地址。所以
执行语句 int
a[5]={1,3,5,7,9},*p=a;之后,
p指向a[0],
而上面for循环中p<a+5等价于p<=a+4表示只要指针指向的元素地址小于等于数组a中的a[4]的地址,就输出p指向的元素。
而p++表示使指针p指向a的下一个元素,
所以结果自然是依次输出a[0],a[1],a[2],a[3],a[4]的值,即13579了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式