作者rex51920594 (rex51920594)
看板Grad-ProbAsk
标题[理工] 中正资结
时间Sun Nov 25 15:40:09 2018
https://imgur.com/YIjeBpT
想请问这种题目要怎麽去想才能解出...
不太清楚方向
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.225.55.164
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Grad-ProbAsk/M.1543131613.A.601.html
1F:推 skyHuan: list是地址的数值,而*list是在地址里面的资料,list就是 11/25 16:59
2F:→ skyHuan: 整个array的起始位址,也就是list[0]的地址 11/25 16:59
3F:推 skyHuan: 如果array[0]的地址是100,那array + 1 = 101 11/25 17:05
4F:→ skyHuan: 而地址的+1是加上代表那个array的一个"元素"大小 11/25 17:05
5F:→ skyHuan: 所以*(array+1)是只起始位址加一个元素大小 11/25 17:05
6F:→ skyHuan: 假设是double的阵列,一个元素占8个byte,就是要找108地 11/25 17:05
7F:→ skyHuan: 址里面的元素,也就是要找array[1]里面的元素是什麽 11/25 17:05
8F:→ skyHuan: 应该是这样,有说错再请其他人补充XD 11/25 17:05
9F:推 plsmaop: 用c99的编译器编译看看,多试几次大概就知道是怎样的规 11/26 09:35
10F:→ plsmaop: 律了 11/26 09:35
11F:推 plsmaop: 一个double是8byte 11/26 09:37
13F:推 b0920075: 第一题代数字进去,第二题double 8byte 所以起始位置 + 11/26 10:59
14F:→ b0920075: 目录乘以八 11/26 10:59
15F:→ b0920075: 第三楼的回答我看到一开始会错意XDD 11/26 11:00
16F:推 skyHuan: 所以我说的是错的吗>< 是讲相反了吗QQ 11/26 11:26
17F:推 skyHuan: 我好像说错了,地址变数加都是加一个元素的大小,所以上 11/26 12:33
18F:→ skyHuan: 面举的例子要改成如果array[0]的地址是100,那array + 1 11/26 12:33
19F:→ skyHuan: = 108,有测试了一小段扣的可以参考 11/26 12:33
21F:推 st945712: 不好意思可以问一下这题的解答吗?? 11/26 15:01
22F:→ st945712: 身边没有电脑让我直接trace一次QQ 想知道答案 11/26 15:03
23F:推 skyHuan: 上面code的注解有写出答案唷 (A) 9.6. (B) 0x456749 11/26 15:13
24F:推 Dora5566: 表示他们要刷掉没写过程式的 11/26 16:05
25F:推 Dora5566: 中字辈都蛮爱给code,考你output,最好花时间写一下C或Ja 11/26 16:09
26F:→ Dora5566: va 11/26 16:09
27F:→ aggress5566: 他上面题目是什麽 我看addressing似乎不是32 bits 11/26 19:16
28F:→ aggress5566: double 直接断定是8 搞不好会被扣点分 11/26 19:16
29F:推 Dora5566: 楼上提醒了 这是24bit 11/26 22:17
30F:推 TEPLUN: 456749是32bit的答案吧 如果是24bits 是456759? 11/27 12:29
31F:推 b0920075: 我以为地址是随便设的... 11/27 14:41
32F:→ b0920075: 我以为三楼的例子是拿char array当例子 XDD 11/27 14:42
33F:→ aggress5566: 看起来一定是随便设阿XDD 我的话我会写sizeof 11/27 23:25
34F:→ rex51920594: 感谢各位Q_Q 12/03 19:54