首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请用C语言的函数指针变量,对manage_device函数进行改造,完成下面C语言代码中的(1)、(2)、(3)和(4)处的变量说明或语句,将解答填入对应栏内。 【C语言代码】 /*变量与类型说明*/ #include "stdio.h"
请用C语言的函数指针变量,对manage_device函数进行改造,完成下面C语言代码中的(1)、(2)、(3)和(4)处的变量说明或语句,将解答填入对应栏内。 【C语言代码】 /*变量与类型说明*/ #include "stdio.h"
admin
2009-02-01
61
问题
请用C语言的函数指针变量,对manage_device函数进行改造,完成下面C语言代码中的(1)、(2)、(3)和(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, iht arg2);
extern int Dev_drv3(int arg1, int arg2);
extern int Dev_drv4(int arg1, int arg2);
#define NOERROR 0
typedef struct {
int _fd;
(1) 函数指针变量说明;/* 变量名用process */
} TYP_DEV_TAB;
TYP_DEV_TAB dev_tab[50]= {{101, Dev_drv1},{99, Dev_drv2},
{80, Dev_drv3},{120, Dev_dry4},};
/* 程序 */
void manage_device(int devid, int arg1, int arg2)
{ iht place ;
int ret;
(2) 函数指针变量说明;/*局部变量,变量名用ProcAction */
for(place=0 ; place<50 ; place++) {
if(dev_tab [place]._fd == devid) {
(3) 语句1;/* 变量名胜ProcAction, 得到具体函数的入口地址 */
break;
}
}
if(place>=50)
printf("NO DEVICE fd = %d\n",devid);
(4) 语句2;
if(ret!=NOERROR)
printf("DEVICE %d error!", devid);
}
在C语言程序中,常在某些变量的说明前加extem,如本题在变量说明中的第一条加extem int sys_stams;请说明加extem与不加extem的区别,在进行编译时会有什么样的不同处理?
选项
答案
[*]
解析
本题考查对C语言的变量声明类型的理解。在变量声明前加extem,表明为引用一个外部变量,是外部变量引用声明,不管该变量在程序的什么位置。如果在一个文件中要引用在另一文件中定义的全局变量,就应在变量声明前加extem。
如果在一个全局变量前不加extem,表明该变量是在本文件中定义的一个全局变量,同时可被其他文件作为外部变量引用。
在不加extem外部变量的定义处,编译时要给变量分配地址空间。在加extem外部变量引用声明处,不给变量分配地址。
值得注意的是,如果在全局变量的声明前都加extem,在这种情况下,编译连接时会确定一处分配一次地址空间。
转载请注明原文地址:https://kaotiyun.com/show/mmWZ777K
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
“一旦事务成功提交,其对数据库的更新操作将永久有效,即使数据库发生故障”,这一性质是指事务的(12)。
关系模式R属性集为{A,B,C},函数依赖集F={AB→C,AC→B,B→C},则R属于(6)。
在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方法______。
在UNIX操作系统中,若用户键入的命令参数的个数为1时,执行cat $1命令;若用户键入的命令参数的个数为2时,执行cat>>$2<$1命令。请将下面所示的Shell程序的空缺部分补齐。 case(1)in 1)cat $1;;
数据仓库系统通常采用3层的体系结构,底层为数据仓库服务器,中间层为(12),顶层为前端工具。
ISO 9001-2000是ISO 9000系列标准的最新成果,它取代了(24)标准。
开发专家系统时,通过描述事实和规则由模式匹配得出结论,这种情况下适用的开发语言是(27)。
某数据库应用系统在运行过程中,发现随着数据量的不断增加,有部分查询业务和数据更新业务执行耗时越来越长。经分析,这些业务都与表Tablel有关。假设Tablel有30多个字段,分别为(Key,A2,A2,…Am,B1,B2,…Bn)。执行频度较高的查询业务都
DBMS提供的DDL功能不包含(35)________________。
某有向图G的邻接表如下图所示,可看出该图中存在弧<v2,v3>,而不存在从顶点v1出发的弧。以下关于图G的叙述中,错误的是()。
随机试题
社会基本矛盾有两对,一对是生产力和生产关系的矛盾,另一对是()
男性,25岁。下腹痛伴脓血便3年。近4日病情加重,并出现高热、衰弱、恶心等症状。查体:精神萎靡,心率114次/分,腹膨隆,全腹压痛,肠鸣音消失。最可能的诊断是
抑制肝昏迷患者大脑中假神经递质的形成,首选的治疗是
麻疹皮疹特点是奶麻皮疹特点是
下列关于业主大会的表述正确的是:()
招标过程中,招标人无权没收投标保证金的情形有()。
有关我国封闭式基金利润分配的说法中正确的有()
我国金融债券发行的特殊性主要体现在()。
【B1】【B10】
A、Itisabouthelpingeachother.B、Itissharingyourstorywithothers.C、Itissomethinginyourheart.D、Itismakingother
最新回复
(
0
)