首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请用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
57
问题
请用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);
}
在设备驱动程序(函数)Dev_drv1中,对指针ptr的说明如下:
【C语文代码】
int Dev_drv1(int arg1,int arg2 )
{
struct node {
int ID;
char name [20];
int range;
} ;
struct node *ptr;
/*其他局部变量声明,略*/
ptr = (struct node *)malloc(sizeof(struct node)*100);
/*其他程序代码,略*/
}
设int为32位整数,char占8位。当对指针ptr赋完值后的值为0x3751CO,若再执行一条“ptr++;”语句,此时ptr的值为多少? (用十六进制表示)。
选项
答案
ptr的值为以下均按正确对待。 0x3751DC,或3751DCH,或十六进制3751DC,或3751DC。
解析
本题考查对C语言指针变量的理解。在指针赋予某一变量的地址后,该指针就指向该变量所分配的地址空间。需要强调的是,指针变量是有类型的,指针的值加1,表示增加按其声明类型所占的字节数,而不是增加一个字节的地址。因此ptr++后ptr的值比原来增加28个字节,当前的值应为0x3751DC。
转载请注明原文地址:https://kaotiyun.com/show/2mWZ777K
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
项目管理工具中,将网络方法用于工作计划安排的评审和检查的是______。
能实现不同的网络层协议转换功能的互连设备是______。
DBS的体系结构,按照ANSI/SPARC报告分为(1);在DBS中,DBMS的首要目标是提高(2);为了解决关系数据库的设计问题,提出和发展了(3);对于DBS,负责定义DB结构以及安全授权等工作的是(4)。
James Martin明确计算机有4类数据环境,独立于应用项目,具有较低的维护成本,应用开发效率较高的是(7)。
算术表达式采用后缀式表示时不需要使用括号,使用(5)________________就可以方便地进行求值。a-b*(c+d)(其中,-、+、*表示二元算术运算减、加、乘)的后缀式为(6)________________,与该表达式等价的语法树为(7)___
假设铁路自动售票系统有n个售票终端,该系统为每个售票终端创建一个进程Pj(i=1,2,…,n)管理车票销售过程。假设Tjj=1,2,…,m)单元存放某日某趟车的车票剩余票数,Temp为Pi进程的临时工作单元,x为某用户的购票张数。Pi进程的工作流程如下图所
在安全通信中,S将所发送的信息使用(12)________________进行数字签名,T收到该消息后可利用(13)________________验证该消息的真实性。
计算机运行过程中,遇到突发事件,要求CPU暂时停止正在运行的程序,转去为突发事件服务,服务完毕,再自动返回原程序继续执行,这个过程称为(1)________________,其处理过程中保存现场的目的是(2)________________。
以下对触发器的叙述中,不正确的是(60)________________。
以下关于软件测试的叙述中,正确的是()。
随机试题
公司增资,是指公司依法增加()
茶碱类药物缓解哮喘发作的主要机制是
执业药师对护士提供用药咨询服务的内容是()。
患者男,56岁,慢性支气管炎伴肺气肿入院。护士评估时发现病人喘呜,氧饱和度85%,4小时前,氧饱和度88%。接下来护士最重要的处理是
根据控制系统的交叉性,安全控制要将( )相互结合。
因某种原因而引起的合同权利义务客观上不复存在,指的是( )。
税务机关可以采取书面通知纳税人开户银行或其他金融机构冻结纳税人的金额略高于应纳税款的存款作为税收保全措施。()
女性,16岁。因确诊急性淋巴细胞性白血病(L2型),已化疗3个疗程,骨髓象提示完全缓解。近1周出现头痛头晕,腰穿脑脊液检查提示CSF压力轻度升高,蛋白含量升高,糖含量下降,白细胞数增多,并可找到幼稚细胞。该患者最可能的诊断是
下面是显示交换机端口状态的例子:2950#showinterfacefastEthernet0/1switchportName:fa0/1Switchport:EnabledAdministrativemode:trunkOperat
TrafficJams—NoEndinSight1Trafficcongestion(拥堵)affectspeoplethroughouttheworld.Trafficjamscausesmogindozens
最新回复
(
0
)