免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: sky_terry
打印 上一主题 下一主题

今天笔试的一题 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2005-10-26 23:22 |只看该作者

今天笔试的一题

[quote]原帖由 "kj501" 发表:
p是指向整型的指针, 在32位体系结构上, int类型应该是4个字节. p = p + 4*sizeof(int)(实际上是p = p + 16)的计算结果应该是指针p移动16*sizeof(int)=64个字节. 用汇编表示就应该是leal 64(%eax), %eax.
你再检查一

论坛徽章:
2
亥猪
日期:2014-03-19 16:36:35午马
日期:2014-11-23 23:48:46
22 [报告]
发表于 2005-10-26 23:59 |只看该作者

今天笔试的一题

原帖由 "kj501" 发表:
p是指向整型的指针, 在32位体系结构上, int类型应该是4个字节. p = p + 4*sizeof(int)(实际上是p = p + 16)的计算结果应该是指针p移动16*sizeof(int)=64个字节. 用汇编表示就应该是leal 64(%eax), %eax.
你再检查一?.........


没错,换成字节应该是4*16=64字节

论坛徽章:
0
23 [报告]
发表于 2005-10-27 00:05 |只看该作者

今天笔试的一题

原帖由 "gvim" 发表:


没错,换成字节应该是4*16=64字节


学到了。

论坛徽章:
0
24 [报告]
发表于 2005-10-27 01:38 |只看该作者

今天笔试的一题

事实证明:

  1. ailene@ubuntu:~$ gcc -o test test.c
  2. ailene@ubuntu:~$ ./test
  3. -1209102116
  4. ailene@ubuntu:~$ ./test
  5. -1208340260
  6. ailene@ubuntu:~$ ./test
  7. -1208401700
  8. ailene@ubuntu:~$ ./test
  9. -1209163556
  10. ailene@ubuntu:~$ ./test
  11. -1208635172
  12. ailene@ubuntu:~$ ./test
  13. -1208291108
  14. ailene@ubuntu:~$ ./test
  15. -1208618788
  16. ailene@ubuntu:~$ ./test
  17. -1208917796
  18. ailene@ubuntu:~$ ./test
  19. -1208217380
  20. ailene@ubuntu:~$ ./test
  21. -1208659748
  22. ailene@ubuntu:~$ ./test
  23. -1208872740
复制代码

论坛徽章:
0
25 [报告]
发表于 2005-10-27 09:54 |只看该作者

今天笔试的一题

什么啊。没有==1 的情况阿。。
VC6.0

0
Press any key to continue

linux
[root@localhost test]# ./out
134514064

论坛徽章:
0
26 [报告]
发表于 2005-10-28 14:34 |只看该作者

今天笔试的一题

原帖由 "kj501" 发表:
to mik:
我还是坚持我的意见.
能不能把你完整的汇编代码贴出来看看?


兄弟,你要结合上下文来看呀!!!!! 你先看一看前面几个贴的回复

我的汇编代码是,取得a[4]

论坛徽章:
0
27 [报告]
发表于 2005-10-28 15:38 |只看该作者

今天笔试的一题

不用 *sizeof(int)
除了就是用错,是 1 只是运气好而已

论坛徽章:
0
28 [报告]
发表于 2005-10-28 16:00 |只看该作者

今天笔试的一题

我认为是移动了64个字节

论坛徽章:
0
29 [报告]
发表于 2005-10-28 16:29 |只看该作者

今天笔试的一题

我在Turbo C++ IDE中运行结果为 0.
int的长度标准是:
  sizeof( short ) =<sizeof( int ) =< sizeof( long )  .

至于楼主说的1,我猜跟 " int main()"有关:
    正常情况下,程序结束 "return 0"执行,返回 0;
    本题指针越界访问,程序出错故 返回 1 了
(个人猜测)

论坛徽章:
0
30 [报告]
发表于 2005-10-28 17:09 |只看该作者

今天笔试的一题

我在linux运行得到-1218598248。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP