皮皮学,免费搜题
登录
logo - 刷刷题
搜题
【简答题】
请阅读以下说明和Socfort程序,将(n)处的字句写在对应栏内。 网络应用的基本模型是客户机/服务器模型,这是一个不对称的编程模型,通信的双方扮演不同的角色:客户机和服务器。 以下是一个简单的客户机程序(服务器程序略),其工作过程非常简单:客户机与服务器建立连接后,接收服务器向客户机返回的一条消息。 用到了两种结构hostent与sockaddr_in: hostent类型的结构定义如下: struct hostent { char * h_name; //主机的正式名称 char * * h-aliases; //别名列表 int h_addrtype; //主机地址类型:AF-XXX int H_length; //主机地址长度:4 B(32 b) char * * h_addr_list; //主机IP地址列表} define h???-addr h-addr-liSt[0] sockaddr_in类型的结构定义:sockaddr_in是通用套接字结构sockaddr在TCP/IP协议下的结构重定义,为TCP/IP套接字地址结构。 Struct sockaddrin{ short int sin-family;//地址类型AF_XXX,其中AF_INET为TCP/P专用 unsigned short int sin-port; //端口号 struct in_addr Sin_addr; //Internet地址 //端口号以及Internet地址使用的是网络字节顺序,需要通过函数htons转换 } struct iN_addr{ _u32 s-addr; //类型为unsignel-long } 使用到了多个函数: struct hostent * gethostbyname(const char * hostname); 函数gethostbyname查询与指定的域名地址对应的IP地址,返回一个hostent结构的指针,如果不成功则返回NULL。 Int?_socket(int domain,im-type,int protoco1); 函数socket创建一个套接字描述符,如果失败返回-1。domain为地址类型,type为套接字类型,本题中为SOCK_STREAM;protocol指定协议,本题中为0。 int connect(int sockfd,struct sockaddr * servaddr,int addrlen); 函数connect与服务器建立一个连接,成功返回0,失败返回-1。servaddr为远程服务器的套接字地址,包括服务器的IP地址和端口号;addrlen为地址的长度。 int read(intfd,char * bur,int len); int write(intfd,char * buf,int len); 函数read和write从套接字读和写数据,成功返回数据量大小,否则返回-1。buf指定数据缓冲区,len指定接收或发送的数据量大小。 [Socket程序] //引用的头丈件略 definePORT 3490 //定,义端口号为3490 int main(int argc,char * argv[]) {int tsockfd,nbytes;//套接字描述符、读入缓冲区的字节数 char buf[1024];//缓冲区 struct hostent * he;//主机信息类型 struct (1) srvadd;//Internet套接字结构 if(argc!=2) {perror(“调用参数为零,请输入服务器的主机名!/n”);exit(1);} if((2))//如果通过主机名没有获得对应的主机信息就提示用户 {perror(“无法通过主机名获得主机信息!/n”);exit(1);} if((3))//在无法创建套接字时,提示用户 {perror(“无法创建套按字!/n”);exit(1);} bzero(&srvaddr, (4));//置空srvaddr sraddr,SIR_family=AF_INET; srvaddr,sln_port:htons(PO日T);srvaddr.sin_addr: (5); //设置套接字结构的各项信息,其中的地址来自域名查询后的hp变量 if(connect(sockfd,(n),sizeof(struct sockaddr))==-1) {perror('连接失败!/n');exit(1);} //连接服务器,如果失败则提示用户 if((nbytes=read(sockfd,buf,MAXDATASIZE))=-1) {perror('读失败!/n');exit(1);} //从套接字中读出数据 buf[nbytes]='/0'; printf('读到的内容:%s',buf); CIose(SOCkfd); //打印数据并关闭套接字
手机使用
分享
复制链接
新浪微博
分享QQ
微信扫一扫
微信内点击右上角“…”即可分享
反馈
参考答案:
举一反三
【单选题】关于库存现金限额的规定,以下说法错误的是( )
A.
库存现金限额每年核定一次
B.
现金限额一般按 3-5 天的日常零星开支核定
C.
边远地区、交通不便地区可按 5-15 天的日常零星开支核定
D.
限额是由人民银行与开户单位商定的
【单选题】某公司计划发行债券 500 万元,年利息率为 10% ,预计筹资费用率为 5% ,预计发行价格为 600 万元,企业所得税为 20% ,则该债券的成本为( )。
A.
10%
B.
7.02%
C.
5.88%
D.
8.77%
【单选题】关于库存现金限额的规定,以下说法错误的是( )
A.
限额是由人民银行与开户单位商定的
B.
现金限额一般按 3-5 天的日常零星开支核定
C.
边远地区、交通不便地区可按 5-15 天的日常零星开支核定
D.
库存现金限额每年核定一次
【单选题】1932年红军取得的第四次反“围剿”作战的胜利是由( )指挥的。
A.
毛泽东
B.
周恩来
C.
李德
D.
博古
【单选题】关于库存现金限额的规定,以下说法错误的是:
A.
限额是由人民银行与开户单位商定的
B.
现金限额一般按3~5天的日常零星开支核定
C.
边远地区交通不便地区可按最长不超过15天的日常零星开支核定
D.
库存现金限额每年核定一次
【单选题】关于库存现金限额的规定,以下说法错误的是( )
A.
限额是由人民银行与开户单位商定的
B.
现金限额一般按 3-5 天的日常零星开支核定
C.
库存现金限额每年核定一次
D.
边远地区、交通不便地区可按 5-15 天的日常零星开支核定
【单选题】1932年红军取得的第四次反反“围剿”作战的胜利是由( )指挥的。
A.
毛泽东
B.
周恩来
C.
李德
D.
博古
【判断题】创意与创新没有什么区别,都是提出不一样的方案。
A.
正确
B.
错误
【单选题】某公司计划发行债券 500 万元,年利息率为 10% ,预计筹资费用率为 5% ,预计发行价格为 600 万元,则该债券的成本为( )。
A.
0.1
B.
0.0705
C.
0.0588
D.
0.0877
【单选题】某公司计划发行债券500万元,年利息率为10%,预计筹资费用率为5%,所得税税率为33%,预计发行价格为600万元,则该债券的成本为(  )
A.
10%
B.
7.05%
C.
5.88%
D.
8.77%
相关题目:
参考解析:
知识点:
题目纠错 0
发布
创建自己的小题库 - 刷刷题