首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C语言代码,回答问题1至问题4,将解答填入对应栏内。 【说明】 在嵌入式操作系统设备管理的实现上,常使用到C语言的函数指针变量,由统一的管理函数调用不同的设备驱动程序。下面的一段C语言代码是驱动管理程序 manage_device调用4
阅读以下说明和C语言代码,回答问题1至问题4,将解答填入对应栏内。 【说明】 在嵌入式操作系统设备管理的实现上,常使用到C语言的函数指针变量,由统一的管理函数调用不同的设备驱动程序。下面的一段C语言代码是驱动管理程序 manage_device调用4
admin
2009-02-01
49
问题
阅读以下说明和C语言代码,回答问题1至问题4,将解答填入对应栏内。
【说明】
在嵌入式操作系统设备管理的实现上,常使用到C语言的函数指针变量,由统一的管理函数调用不同的设备驱动程序。下面的一段C语言代码是驱动管理程序 manage_device调用4个不同设备驱动程序,但没有用到函数指针变量。
【C语言代码】
/*变量与类型说明*/
#include "stdio.h"
#include "stdlib.h"
extern int sys_status;
extern int Dev_drv1(int arg1, int arg2);
extern int Dev_drv2(int arg1, int arg2);
extern int Dev_drv3(int arg1, int arg2);
extern int Dev_drv4(int arg1, iht arg2);
#define NOERROR 0
type struct {
int _fd;
} TYP_DEV_TAB;
TYP DEV_TAB dev_tab[50]= {101,99, 80, 120,};
/*程序代码*/
void manage_device(int devid, int arg1, int arg2)
{ int place ;
int ret;
for(place=0 ; place<50 ; place++)
if dev_tab [place]. fd == devid) break;
if(place>=50)
printf(" NO DEVICE fd = %d\n ",devid);
switch(dev_tab [place]._fd) {
case 80:
ret = Dev_drv3(int arg1,int arg2);
break;
case 99:
ret = Dev_drv2(int arg1,int arg2);
break;
case 101:
ret = Dev_drv1(int arg1,int arg2);
break;
case 120:
ret = Dev_drv4(int arg1,int arg2);
break;
}
if (ret!=NOERROR)
printf(" DEVICE %d error!\n ", devid);
}
int Dev_drv1(int arg1,int arg2)
{
/*局部变量声明,略*/
/*驱动程序代码,略*/
}
int Dev_drv2(int arg1,int arg2)
{
/*局部变量声明,略*/
/*驱动程序代码,略*/
}
int Dev_drv3(int arg1,int arg2)
{
/*局部变量声明,略*/
/*驱动程序代码,略*/
}
int Dev_drv4(int arg1,int arg2)
{
/*局部变量声明,略*/
/*驱动程序代码,略*/
选项
答案
(1)int (*process)(int arg1,int arg2); (2)int (*ProcAction)(int arg1,int arg2); (3)ProcAction=dev_tab[place].process; (4)ret=ProcAction(arg1,arg2);
解析
本题考查对C语言中函数指针变量的理解和用法。在C语言中,可以用指针变量指向整型变量、字符串、数组、结构变量,也可以指向一个函数,对指针的用法非常灵活,也很容易出错。其中,函数指针变量为较高级的用法。
一个函数在编译时被分配给一个入口地址,这个入口地址就称为函数的指针。可以用一个指针变量指向函数,然后通过该指针变量调用此函数。
本题已将使用变量指向函数编写设备驱动程序的大部分给出,只需在对函数指针变量的声明和引用处,只需给出正确的用法即可。
转载请注明原文地址:https://kaotiyun.com/show/hmWZ777K
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
中国采用的电视的制式是(1),采用(2)彩色空间,它的帧频是(3),电视数字化的标准是(4)。
DBS的体系结构,按照ANSI/SPARC报告分为(1);在DBS中,DBMS的首要目标是提高(2);为了解决关系数据库的设计问题,提出和发展了(3);对于DBS,负责定义DB结构以及安全授权等工作的是(4)。
ISO 9001-2000是ISO 9000系列标准的最新成果,它取代了(24)标准。
不属于安全性控制机制的是(9)。
有关概念结构设计,下列说法正确的是(15)。
关系模型SC(学号,姓名,学院,学院领导,课程号,课程笔,成绩),函数依赖集F={学号→(姓名,学院,学院领导),学院→学院领导,课程号→课程名,(学号,课程号)→成绩},则关系SC中(48)________________,要满足第二范式,应将SC分解
在安全通信中,S将所发送的信息使用(12)________________进行数字签名,T收到该消息后可利用(13)________________验证该消息的真实性。
在互联网中,各种电子媒体按照超链接的方式组织,通常使用(22)________________来描述超链接信息。
I/0设备管理软件一般分为4个层次,如下图所示。图中①②③分别对应(21)________________。
随机试题
正常情况下,最易引起牙本质敏感症的釉牙骨质界结构为()
王某,近日感觉疲乏无力、纳差、有时恶心前来就诊。医嘱给予查谷丙转氨酶,应何时采集血标本
下列哪项不属于人身保险的特征?( )
某集团下设一A事业部,2003年实现销售收入3000万元,变动成本率为70%,固定成本为400万元,其中折旧费为200万元。(1)若该事业部为利润中心,固定成本中只有折旧费是部门经理不可控而应该由事业部负担,折旧费以外的固定成本为部门经理的可控成
中国社会服务机构的类型主要有()。
青瓦,是难得的雅俗共赏、贵贱咸宜的建筑材料。这小小的瓦片,似乎有神奇的魔法:寺庙等宗教场所铺上青瓦,就会显得异常__________;园林等休闲场所铺上青瓦,就会显得特别__________;书院等文化场所铺上青瓦,就会显得相当__________;甚至连
阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。[说明]防火墙是一种广泛应用的网络安全防御技术,它阻挡对网络的非法访问和不安全的数据传递,保护本地系统和网络免于受到安全威胁。图3—1给出了一种防火墙的体系结构。[问题2](1
在窗体上画一个水平滚动条,其属性值满足Min<Max。程序运行后,如果单击滚动条右端的箭头,则Value属性值()。
Whatisthespeakermainlytalkingabout?
Overaverylargenumberoftrials,theprobabilityofanevent______isequaltotheprobabilitythatitwillnotoccur.
最新回复
(
0
)