首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
admin
2009-05-15
64
问题
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。
【说明】
在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改变。一个ImageCon结构能够关联一组ImageView结构。当ImageCon结构的内容或状态发生变化时,所有与之相关联的ImageView结构都将被更新,这种应用被称为观察者模式。以下代码采用C语言实现,能够正确编译通过。
【C代码】
#include <stdio.h>
#define OBS_MAXNUM 20/*一个ImageCon变量最多能够关联的ImageView变量的个数*/
typedef void (1) (struc ImageCon *,struct ImageView *);
struct ImageView{
func update; /*ImageView结构采用的更新函数*/
/*其他的结构字段省略*/
};
struct ImageCon{
(2) myObs[OBS_MAXNUM];
/*存储所有与ImageCon相关联的ImageView结构指针*/
intindex; /*与ImageCon结构变量相关联的ImageView结构变量的个数*/
};
void attach(struct ImageCon *IMG,struct ImageView *ob){
/*关联Obersver结构ob与ImageCon结构IMG*/
int loop=0;
if(IMG→index>=OBS_MAXNUM||ob==NULL)return;
for(loop=0;loop<IMG→index;loop++)
if(IMG→myObs [loop]= =ob)return;
IMG→myObs[IMG→index]=ob;
IMG→index++;
}
void detach(struct ImageCon *IMG,struct ImageView *ob){
/*解除IMG结构与ob结构间的关系*/
int loop;
if(ob= =NULL)return;
for(loop=0;loop<IMG→index;loop++){
if(IMG→myObs[loop]= =ob){
if(loop<=IMG→index-2)
IMG→myObs[loop]=IMG→myObs[ (3) ];
IMG→myObs[IMG→index-1]=NULL;
IMG→index- -;
breack;
}
}
}
void updatel(struct ImageCon *IMG,struct ImageView *ob){
/*更新ob结构的值,更新代码省略*/
}
void update2(struct ImageCon *IMG,struct ImageView *ob){
/*更新ob结构的值,更新代码省略*/
}
void notifyObs(struct ImageCon *IMG){
/*当IMG结构的值发生变化时,通知与之关联的所有ImageView结构变量*/
int loop;
for(loop=0;loop<IMG→index;loop++){
(IMG→myObs[loop])→update (4);
}
}
void main(){
struct ImageCon IMG;/*定义一ImageCon变量*/
struct ImageView explorer1,explorer2;/*定义两个ImageView变量*/
/*初始化与ImageCon变量相关的ImageView变量个数为0*/
IMG.index=0;
explorer1.update=updatel;/*设置explorerl变量的更新函数*/
explorer2.update=update2;/*设置explorer2变量的更新函数*/
attach(&IMG,&explorer1);/*关联explorer1与IMG对象*/
attach(&IMG,&explorer1);/*关联explorer1与IMG对象*/
/*其他代码省略*/
(5);
return;
}
选项
答案
(2)struct ImageView *
解析
由myObs的功能可知,它是struct ImageView。类型的。
转载请注明原文地址:https://kaotiyun.com/show/DujZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
DNS是应用最广泛的主机名和IP地址的转换机制,它使用(1)来处理网络中成千上万个主机和IP地址的转换。在Linux中,DNS是由BIND软件来实现的。BIND是一个(2)系统,其中的resolver程序负责产生域名信息的查询,一个称为(3)的守护进程负责
阅读下列说明,根据网页显示的效果图,回答问题1至问题3。[说明]某咨询公司对外提供行业研究报告,其客户分为银卡、金卡及VIP客户,行业研究报告级别分为A、B和C三类,分别对应VIP、金卡及银卡权限。行业研究报告访问权限定义如下:不同级别用户
为了支持SNMP协议的管理功能,在基于WindowsServer2003操作系统的网络管理站中,需要进行哪些配置工作?结合图6-6的网络拓扑图和图6-7的系统输出信息,如果网络管理员小郭要求通过snmputil命令单独查询交换机1的存活运行时间,则
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某网站采用ASP+SOLServer开发,系统的数据库名为gldb,数据库服务器IP地址为202.12.34.1。打开该网站主页,如图5-1所示。以下是该网站进行数据
试题二阅读以下说明,回答【问题1】至【问题4】,将解答填人答题纸对应的解答栏内。【说明】某公司网络拓扑结构如图2-1所示,DNS服务器采用windowsServer2003操作系统,当在本地查找不到域名记录时转向域名服务器
阅读以下说明,回答问题。【说明】某公司局域网拓扑图如图3一1所示,其中Sl为三层交换机,S2和S3为二层交换机。管理员为S2做了如下配置,请将其补充完整或解释命令:S2(config)#vtpmode(10);设置为VTP客户端模式
阅读以下说明,回答问题1~问题3,将解答填入答题纸对应的解答栏内。(2007年11月下午试题三)【说明】应用FTP在两台计算机之间传输文件,一台计算机作为FTP客户端,安装FTP客户端软件(或操作系统自带);另一台作为.FTP服务器,安
为了保障数据的存储和传输安全,需要对一些重要数据进行加密。由于对称密码算法(49),因此特别适合对大量的数据进行加密。
通常计算机的存储器是一个由Cache、主存和辅存构成的3级存储系统。辅助存储器一般可由磁盘、磁带和光盘等存储设备组成。Cache和主存一般是一种(11)存储器。在各种辅存中,除了(12)外,大多是便于脱卸和携带的。Cache存储器一般采用(13)半导体芯片
在使用微软公司的Word 2000办公的时候,为了防止计算机意外死机或者停电带来的麻烦,通常需要使用(1)命令设置文档的自动保存功能;在复制了文档后,需要快速的粘贴复制的内容,通常使用快捷键(2);在Word文档录入完毕的时,突然发现把所有“千古”误写为“
随机试题
简述教育督导通知书应包括的内容。
设函数在x=0处连续,则a的值为_________.
Artificialflowersareusedforscientificaswellasfordecorativepurposes.Theyaremadefromavarietyofmaterials,sucha
下列对苏合香的叙述中,正确的是
关于分部分项工程成本分析的说法,正确的是()。
下列不属于会计职业道德自我教育范围的有()。
设备的技术寿命缩短是因为()。
出质人对质押权利占有的合法性,包括()。
甲公司2011年对发生的部分业务的会计处理如下:①2009年2月由于原材料价格下跌,甲公司决定将存货发出的计量方法由先进先出法改为后进先出法,2011年10月由于市场发生突变,原材料价格飞速上涨,甲公司于是将存货发出的计量方法又重新变更为先进先出
Theguardtoldthethreepeoplethatthere______.Thethreemenmissedthetrain______.
最新回复
(
0
)