| 查看: 1709 | 回复: 10 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
heroyejian铜虫 (正式写手)
|
[求助]
请解释一下这句话的意思 static int (*usersMessage)(char*,...);
|
||
|
本人知道在在c语言中函数体外部使用static什么变量的话,是申明了一个文件级的外部变量,但是请问下面一句话如果定义在外部的话,是什么意思啊?我基础很差 static int (*usersMessage)(char*,...); |
» 猜你喜欢
博士读完未来一定会好吗
已经有24人回复
导师想让我从独立一作变成了共一第一
已经有9人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有11人回复
读博
已经有4人回复
JMPT 期刊投稿流程
已经有4人回复
心脉受损
已经有5人回复
Springer期刊投稿求助
已经有4人回复
小论文投稿
已经有3人回复
申请2026年博士
已经有6人回复
|
这句话定义了一个函数指针 usersMessage,不是变量,是标准的C语言用法。 也就说,可以用(*usersMessage)(,...)调用任意符合这个(char*,...)参数列表的函数。 例如之前定义了两个函数 hadle(char*,...);hadle2(char*,...); 那么先写userMessage = &hadle; 就可以用(*usersMessage)(char*,...)调用hadle(char*,...)。 如果再写userMessage = &hadle2; 就可以用(*usersMessage)(char*,...)调用hadle2(char*,...)了。这种利用函数指针访问的方法可以使程序变得更加灵活,也提高了程序的可移植性。 |
11楼2012-05-12 22:13:21
heroyejian
铜虫 (正式写手)
- 应助: 4 (幼儿园)
- 金币: 42
- 红花: 1
- 帖子: 455
- 在线: 53.2小时
- 虫号: 584367
- 注册: 2008-08-01
- 性别: GG
- 专业: 计算机软件
2楼2012-03-07 11:53:17
4楼2012-03-08 18:36:30
heroyejian
铜虫 (正式写手)
- 应助: 4 (幼儿园)
- 金币: 42
- 红花: 1
- 帖子: 455
- 在线: 53.2小时
- 虫号: 584367
- 注册: 2008-08-01
- 性别: GG
- 专业: 计算机软件
5楼2012-03-11 13:08:01













回复此楼

heroyejian