以下程序的运行结果是 为什么答案是出错

[复制链接]
查看11 | 回复3 | 2011-3-5 03:16:17 | 显示全部楼层 |阅读模式
struct pp
{int *rear;}
int a=1,b=2,c=3;
struct pp x[3]={&a,&b,&c},*s=x;
main(){printf("%d\n",*++s->rear);}

回复

使用道具 举报

千问 | 2011-3-5 03:16:17 | 显示全部楼层
????”内存。该内存不能为“read”。 “0x????????”指令引用的“0x????????”内存,该内存不能为“written”。 以上的情况相信大家都应该见到过,甚至说一些网友因为不爽于这个经常出现的错误提示而屡次重装系统。相信普通用户应该不会理解那些复杂的十六进制代码。 出现这个现象有方面的,一是硬件,即内存方面有问题,二是软件,这就有多方面的问题了。 一.先说说硬件: 一般来说,电脑硬件是很不容易坏的。内存出现问题的可能性并不大(除非你的内存真的是杂牌的一塌徒地),主要方面是: 1。内存条坏了(二手内存情况居多) 2。使用了有质量问题的内存。 3。内存插在主板上的金手指部分灰尘太多。 4。
回复

使用道具 举报

千问 | 2011-3-5 03:16:17 | 显示全部楼层
struct pp{int *rear;};// ; 分号故意不写的吧要不怎么能谈运行结果int a=1,b=2,c=3;struct pp x[3]={&a,&b,&c},*s=x;//struct pp x[3]={&a,&b,&c}, 这句&a,&b,&c}分别给3个数组元素的成员rear赋值了int main(int
回复

使用道具 举报

千问 | 2011-3-5 03:16:17 | 显示全部楼层
貌似结构的定义在后面要加上一个分号,,如struct pp{
int *rear;};
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行