免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2707 | 回复: 10
打印 上一主题 下一主题

[C] 请教函数指针数组的问题! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-07 20:36 |只看该作者 |倒序浏览
下班后回家想到一个问题,如下:
首先:
typedef int (*P_FUNTTION) (int a, int b)

然后
P_FUNTTION func_array[10];


设置:
func_array[0] = NULL;


再调用:
func_array[0](tmpa, tempb);


会出什么问题?

[ 本帖最后由 dodolo0k 于 2008-8-7 20:43 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-08-07 20:56 |只看该作者
我这问题这么没技术含量....都快沉了

论坛徽章:
0
3 [报告]
发表于 2008-08-07 21:22 |只看该作者
P_FUNTTION 作为一个函数指针类型, 指向返回类型为int, 形参含有两个int的函数原型.
用typedef的目的是什么?

使用来简化声明的,使其更简洁.(个人认为)

需要将其指向函数原型吧? 不然你这样做好像没什么意义吧?

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
4 [报告]
发表于 2008-08-07 21:43 |只看该作者

回复 #1 dodolo0k 的帖子

因为func_array[0]为NULL,所以运行时程序会异常退出!

论坛徽章:
0
5 [报告]
发表于 2008-08-07 21:46 |只看该作者
原帖由 sun20082002 于 2008-8-7 21:22 发表
P_FUNTTION 作为一个函数指针类型, 指向返回类型为int, 形参含有两个int的函数原型.
用typedef的目的是什么?

使用来简化声明的,使其更简洁.(个人认为)

需要将其指向函数原型吧? 不然你这样做好像没什么 ...

目的是我要定义一个函数指针数组

使用来简化声明的,使其更简洁.(个人认为)
====〉简洁也是一个考虑

是这样的:
我们项目中需要unicode 到各种本地编码的转换表,且是以提供解决方案的经营模式,一:我们提供平台代码(库,比如GUI库),二:给第三方开发商提供工具;我们考虑的是工具可以配置预编译宏来给函数指针对应位置赋给各种不同语言的UTF16到本地编码的转换接口(繁体中文,简体中文,韩文等全字库转换table会占用很大的codesize,每个60K左右),这样就可以做到需用某个接口的时候才链接上

嵌入式开发

[ 本帖最后由 dodolo0k 于 2008-8-7 21:53 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2008-08-07 22:04 |只看该作者

回复 #5 dodolo0k 的帖子

那以后要好好向你(及大家)学习了,咱还在学校里自己摸索呢,水平还很洼

论坛徽章:
0
7 [报告]
发表于 2008-08-07 22:36 |只看该作者
内存访问非法,core dump(核心掉进陷阱里)

论坛徽章:
0
8 [报告]
发表于 2008-08-08 00:38 |只看该作者
恩,core dump

论坛徽章:
0
9 [报告]
发表于 2008-08-08 00:48 |只看该作者
个人还是喜欢直接 int (*fun_array[10])(int, int);  这样定义

P_FUNTTION func_array[10];  这样还要去找 P_FUNCTION 这是啥东东。

论坛徽章:
0
10 [报告]
发表于 2008-08-08 10:00 |只看该作者
func_array[0]为NULL(0),调用时候会内存非法访问。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP