免费注册 查看新帖 |

Chinaunix

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

一名应届生,大家帮指导下。 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2005-06-23 17:36 |只看该作者

一名应届生,大家帮指导下。

楼上这么多人怎么都重复发贴?

论坛徽章:
0
22 [报告]
发表于 2005-06-23 17:40 |只看该作者

一名应届生,大家帮指导下。

非常谢谢gerysand的指导。你的工作正是我向往的。。哈。
但给的指导就是读操作系统的书和编译原理,这些东西都学过。理解得也还不错。正在看本Real Time Embedded Systems Design - An Introduction To Processes, Tools And Techniques这本书,我觉得对我这个应届生,只能看些入门的东西,相关的技术范畴和开发的具体流程。

论坛徽章:
0
23 [报告]
发表于 2005-06-23 17:41 |只看该作者

一名应届生,大家帮指导下。

[quote]原帖由 "pod"]楼上这么多人怎么都重复发贴?[/quote 发表:

因为论坛正在搬家。所以发帖后,没有相关提示信息。导致人误认为没有发出去。刷新所致。

论坛徽章:
0
24 [报告]
发表于 2005-06-23 18:53 |只看该作者

一名应届生,大家帮指导下。

原帖由 "john56" 发表:
非常谢谢gerysand的指导。你的工作正是我向往的。。哈。
但给的指导就是读操作系统的书和编译原理,这些东西都学过。理解得也还不错。正在看本Real Time Embedded Systems Design - An Introduction To Processes, ..........


理解的都不错,那是挺强了

不过编译感觉不大好读啊,我读了两年才了解点皮毛


如果你现在有这个基础,另外基本硬件的东西,也懂一点的话,工作几个月后你就能马上上手了:)

给你道题做:)

int func1(long a)
{
          return 10*a;
}
int func2( a)
long a;
{
          return 10*a;
}

int main()
{
           printf("func1 return value=%d",func1(10.0));
           printf("func2 return value=%d",func2(10.0));
}


答案是
func1 return value=100
func2 return value=0;


如果你能独立解决,说明编译是学的不错了,呵呵

论坛徽章:
0
25 [报告]
发表于 2005-06-23 19:10 |只看该作者

一名应届生,大家帮指导下。

你这个程序准确无误?
如果是,那我只能老实回答。这个问题我不知道解答。

因为明白人看得清楚。第二函数声明有点怪。
我只能说变量的类型没指定。
然后第一函数和第二函数变量一个在堆栈,一个在静态区。这两个一个初始化是不清零的,一个是清零的。

论坛徽章:
0
26 [报告]
发表于 2005-06-23 19:37 |只看该作者

一名应届生,大家帮指导下。

中科院的考研题,我考了:)

论坛徽章:
0
27 [报告]
发表于 2005-06-23 19:40 |只看该作者

一名应届生,大家帮指导下。

你强啊。我有一同学去了那儿。但不是上研。

论坛徽章:
0
28 [报告]
发表于 2005-06-23 19:47 |只看该作者

一名应届生,大家帮指导下。

第二个函数的声明方法是早期的c语言函数声明方式,现在gcc仍然支持:)

关键在于编译的时候,对两个函数的实参检查不同

第一个由于声明了形参类型,调用的时候,把10.0转成了10
第二个函数的声明方式,不对实参做参数检查,10.0传的时候把它转化成了浮点型,而c语言中函数取实参的时候是根据参数类型向栈取,结果取到的是浮点数10.0的高4字节,实际为0,所以10×0=0

你可以把这个文件用 gcc -S test.c 编译成汇编看一下,我现在windows环境下,所以没法给你看,有不明白的,我可以试着帮你解释一下:)


不过兄弟,学的还是挺不错的,赞一下

论坛徽章:
0
29 [报告]
发表于 2005-06-23 20:00 |只看该作者

一名应届生,大家帮指导下。

屁啊。这么烂。不过你说的,我还是第一次听。
因为只见过GCC,没用过。用也没你那么仔细。
int func2( a)
long a;
{
         return 10*a;
}
这儿long a;又是什么作用呢?
整个程序的构建与编译原理有关系?好像只有具体的编译器有关系。

论坛徽章:
0
30 [报告]
发表于 2005-06-23 20:02 |只看该作者

一名应届生,大家帮指导下。

嗯。想起来了。一本书上提到过早式的C的语法。上面的一句白问了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP