c语言中, 函数名也称为函数的指针,那函数名是否也占内存空间?
4个回答
展开全部
首先你上面的话是错误的,函数名是一段指令的入口地址,它是地址常量,不占用内存空间,只是在编译阶段存在于编译器的符号表中,例如函数的入口地址是0x123456,在翻译成机器指令以后,函数名是不存在的其在本质上对应汇编上的jump指令,在执行函数的时候,跳转到0x123456,这个函数名的本质就是这个地址。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-11
展开全部
函数名也称为函数的指针, 函数名是函数的首地址,指针当然占空间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-12
展开全部
经过编译后,函数实际变成了一小段机器代码,并直接通过内存地址进行跳转,本身将不会有名字了,所以不再存在函数名这样的东西。
C语言是高级语言,我们看见的源代码,是给人理解和表达的。CPU能理解的,只能是二进制的机器码。
C语言是高级语言,我们看见的源代码,是给人理解和表达的。CPU能理解的,只能是二进制的机器码。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询