请问这道C语言的题
答案:2 悬赏:10 手机版
解决时间 2021-01-17 21:54
- 提问者网友:眉目添风霜
- 2021-01-17 03:39
请问这道C语言的题
最佳答案
- 五星知识达人网友:神也偏爱
- 2021-01-17 03:51
题目没有限定要输出那个数组
所以答案是肯定的
因为C语言不检查指针越界
第二个循环就把数组a后面的内存当做int类型
连续输出10个
.
实际上编译系统分配内存时
是把int型变量i排在数组a之后
接着就是int型指针变量p
后面就是未分配的空间
所以输出的10个int的第一个就是i的值0
第二、三个就是指针p的值
后面就不可预知了
.
作者可能是想问是否能输出数组a
但是他没有说清楚,或者语文表达能力欠缺
问题的描述与他心里所想的不一致了
现在的教科书错误很多
教师的素质越来越差了
所以答案是肯定的
因为C语言不检查指针越界
第二个循环就把数组a后面的内存当做int类型
连续输出10个
.
实际上编译系统分配内存时
是把int型变量i排在数组a之后
接着就是int型指针变量p
后面就是未分配的空间
所以输出的10个int的第一个就是i的值0
第二、三个就是指针p的值
后面就不可预知了
.
作者可能是想问是否能输出数组a
但是他没有说清楚,或者语文表达能力欠缺
问题的描述与他心里所想的不一致了
现在的教科书错误很多
教师的素质越来越差了
全部回答
- 1楼网友:北城痞子
- 2021-01-17 05:01
不能的,你的p++经历了两次循环,第二次循环p都已经越界访问了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯