笔试题求助(指针)

short arrarys[8];
int*p=(int*)arrays;
for(int i = 0;i<8;++i)
{
    *p=i;
}

以上代码存在什么bug。
恳求大佬解析

我的理解是short数组的长度是16;给*P赋值的时候一个元素占四个字节,在赋值到第五个个字节的时候就会超出分配给short的内存长度。  然后面试官说也可以这样理解
发布#笔试题目#
全部评论
i没有声明,你隔这玩脑经急转弯呢?
点赞 回复 分享
发布于 2018-06-15 07:56
你*p又没有动,怎么会段错误?这个毫无错误,只是内存变成了
点赞 回复 分享
发布于 2018-06-15 01:52
声明了数组,没有初始化
点赞 回复 分享
发布于 2018-06-14 23:02
可能会段错误
点赞 回复 分享
发布于 2018-06-14 22:34

相关推荐

06-28 22:48
已编辑
广东金融学院 Java
小浪_Coding:学院本+这俩项目不是buff叠满了嘛
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务