| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 732 人关注过本帖
标题:指针的问题10。14
只看楼主 加入收藏
xuexuexue
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2004-7-19
收藏
 问题点数:0 回复次数:3 
指针的问题10。14

static int a[2][3]={{1,2,3},{4,5,6}}; int m,*ptr; ptr=&a[0][0]; m=(*ptr)*(*(ptr+2))*(*(ptr+4)); 这道理中的(*ptr)的结果是1,(*(ptr+2))表示的是二维数组中第2和对应的一维数组的首地址,也就是4对不对?那么(*(ptr+4))的值又是什么

呢?

搜索更多相关主题的帖子: 指针 
2004-10-14 22:26
e路奔跑
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2004-10-9
收藏
得分:0 

因为你定义了int *ptr,所以ptr的值在增加的时候是按照int的类型增加的,而内存里存放元素的顺序(地址由低到高)是1,2,3,4,5,6,所以m=(1)*(3)*(5)=15。

c是中间级语言,有低级语言的特点(和硬件联系密切),又有高级语言的优点(灵活,好用)。对类型的严格要求体现了低级语言的特点,因为类型是读取内存的依据,列出的问题是最好的例子。

这只是我自己的观点,欢迎大家讨论。


2004-10-15 00:26
小快乐
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2004-9-10
收藏
得分:0 

看优先级就行拉,()号的优先级比*的大.

ptr指首地,后面的一路推就行拉


爱看小说历史故事书吃零食玩游戏看漫画动画片种花看足球看美女看帅哥爱和小孩子玩.欢迎有同样爱好的加我qq229278452,请注明你的爱好
2004-10-15 00:50
xuexuexue
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2004-7-19
收藏
得分:0 
明白了,谢谢大家

C语言让我感爱到了计算机的乐趣 目前目标:程序员
2004-10-17 18:05
快速回复:指针的问题10。14
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027725 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved