| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 675 人关注过本帖
标题:有关函数名的问题!
只看楼主 加入收藏
九天冥盟
Rank: 2
等 级:论坛游民
威 望:1
帖 子:77
专家分:20
注 册:2015-7-14
结帖率:36%
收藏
已结贴  问题点数:10 回复次数:5 
有关函数名的问题!
请问大师men:
    单独使用“函数名”是函数名代表什么?
    函数名代表函数的人口地址吗?
    如果是的话:那么 “函数名”和“&函数名”一样吗?
例如:int p(int i,int j)
{
return i+j;
}
int (*p1)(int i,int j)=p;和  int (*p2)(int i,int j)=&p;
一样吗?请解释一下?
搜索更多相关主题的帖子: return 
2015-08-05 16:17
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:4 
单独使用“函数名”是函数名代表什么?
------ 函数名 代表这个 函数,就像“小明”代表小明这个人。

函数名代表函数的人口地址吗?
------ 不,见上一个问题的回答

那么 “函数名”和“&函数名”一样吗?
------ 不一样,类型不一样呀

使你困惑的是,函数可隐式转化为函数指针类型。(这个和数组的行为一样,因为它们都无法赋值,所以才有此规定)
2015-08-05 16:27
九天冥盟
Rank: 2
等 级:论坛游民
威 望:1
帖 子:77
专家分:20
注 册:2015-7-14
收藏
得分:0 
回复 2楼 rjsp
请问;
“函数可隐式转化为函数指针类型”是什么情况?
能用例子,或通俗的语言来说明一下吗?
2015-08-05 17:22
九天冥盟
Rank: 2
等 级:论坛游民
威 望:1
帖 子:77
专家分:20
注 册:2015-7-14
收藏
得分:0 
回复 2楼 rjsp
函数可隐式转化成函数指针类型;
那么,函数指针类型是否可转化函数?
还有;
是用“函数名”好,还是用“&函数名”好呢?
2015-08-05 17:51
kenierlee
Rank: 6Rank: 6
等 级:侠之大者
威 望:3
帖 子:58
专家分:474
注 册:2015-7-28
收藏
得分:4 
void f(void) {}
...
不管是 void (*p)(void) = f; 还是 void (*p)(void) = &f; 都是一样的,只不过后者的语法更像取地址,但实际上f本身就可以代表一个地址,楼主可以尝试打印f的值来看看。
但在C++里面一个函数如果用inline修饰,则编译器有可能会将该函数内联到代码中,所以也就不存在地址的说法了,但如果你之后以非调用的方式引用了该函数名,则编译器必须生成一个独立的函数,那它就和上面的f一样了。
2015-08-06 11:32
怪叔叔
Rank: 4
来 自:陕西
等 级:业余侠客
威 望:1
帖 子:113
专家分:234
注 册:2013-9-22
收藏
得分:4 
2015-08-07 13:23
快速回复:有关函数名的问题!
数据加载中...
 
   



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

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