C语言题要求详细解释,谢谢

 我来答
岔路程序缘

2017-05-28 · TA获得超过8.9万个赞
知道大有可为答主
回答量:9918
采纳率:93%
帮助的人:3330万
展开全部
选B。
只有B:p1+=5具有实际意义,指向这一句时,p1指针往后移动5次,从指向a[0]改为指向a[5]了。
关于其他的几个选项,首先要明确p1p2都是指针变量,它们的值都是一个地址,所以地址*地址、地址/地址、地址+地址,还有地址与常数的乘除运算都是毫无意义的,所以A、C选项是错误的表达。最后一个(D)把指针p2的地址赋值给p1,这也是不允许的,除非p2先定义为二级指针才可以,否则,只能把一个普通变量的地址赋值给它。
Elvisass
2017-05-27 · TA获得超过181个赞
知道小有建树答主
回答量:65
采纳率:100%
帮助的人:20.6万
展开全部

B

敢情你是在考试啊- -哦不对考完了啊……

//变量:
// a : char[10] 或 char*
// p1: char*, 初始化为 p1=a
// p2: char*, 未初始化

p1 *= p2; //Error, 指针不存在乘运算

p1 += 5; // Ok, p1==&a[5]

p1 /= 5; //Error, 指针不存在除运算

p1 = &p2; //Error, 尝试将 char** 转换为 char* 型
追问
不是,考前临阵磨刀,这是题库
你写的这个没看懂,能再详细些吗
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听不清啊
高粉答主

2017-05-27 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.8亿
展开全部
答案B是正确的,它将指针后移5个元素。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式