C语言关于指针变量输出

请问这两个红线框里的意思是什么,尽量说的具体些,谢谢了... 请问这两个红线框里的意思是什么,尽量说的具体些,谢谢了 展开
 我来答
kaixingui2012
推荐于2016-02-05 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6310万
展开全部
p是指针,先指向数组a的首地址
p++表示先使用p,再执行p=p+1,这是一种简单写法
scanf(”%d“, p++ ); //先向p指向的地址中写入一个整数,然后p指向下一个整数的地址。
追问
第二个for循环里的两个是什么意思呢
追答
那是循环变量改变区
for语句结构如下:
for( e1; e2; e3 )
{
for_statement ;
}
e1是初始化区,只执行一次
e2是条件区,每次先检查e2是否为真,为真则执行for_statement ;否则结束循环
e3是循环变量改变区,每执行完一次for_statement ;就会去执行e3
haiyangfenghuo
2014-10-24 · TA获得超过2439个赞
知道大有可为答主
回答量:2388
采纳率:0%
帮助的人:791万
展开全部
因为scanf输入的时候要写变量的地址,这里的p就是a[10]数组的首地址,p++是指针向后移。
后面的p++是指让指针+1,就是a的地址每次后移,为了取a中的每个元素,可以通过这种方式让p的值依次后移,这样*p就可以直接取用数组的元素了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
孟涛玉
2014-10-24 · 超过13用户采纳过TA的回答
知道答主
回答量:68
采纳率:0%
帮助的人:38.1万
展开全部
第一个,先输出p的值,在把p+1赋值给p。第二个就是i+1赋值给i,p+1赋值给p

不明白可以再问,望采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Ang_Long
推荐于2018-03-28
知道答主
回答量:9
采纳率:0%
帮助的人:3.3万
展开全部
p++和i++是一样的,后置自加运算符,表示对p和i自加(即加1)。
这里的 p++是将指针加1,每次循环的时候指向数组a的下一个位置,用于存放scanf输入的数据。
i++则是为了控制循环的次数。
你是不明白第二个for循环里面为什么有两个++吗?p++和i++!这只是把他们放在一起罢了,和for循环的初始化是一样的。另外,逗号(,)也是运算符哦,只是优先级最低!

++有前置和后置的区别,即++p和p++是不一样的。
++p是p的值直接加1;p++是待运算完之后p再加1。
注意:这里的p++(加1)是个泛指概念,确切的说,对于指针类型,每次加的是个sizeof(type),type是类型,这里是int。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式