| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 210 人关注过本帖
标题:socket实现服务器方程序:求解!急急急!!!
收藏  订阅  推荐  打印 
xiaomai67
Rank: 1
等级:新手上路
帖子:1
积分:110
注册:2008-5-19
socket实现服务器方程序:求解!急急急!!!

服务器方程序:
//File Name:streams.c
#include<winsock.h>
#include<stdio.h>
#define TRUE1
main()
{
int sock.,length ;
struct sockaddr_in server;
struct sockaddr tcpaddr;
int msgsock;
char buf[1024];
int rval,len;
sock=socket(AF_INET,SOCK_STREAM,0);
if(sock<0){
perror(“opening stream socket”);
exit(1);
}
server.sin_family=AF_INET;
server.sin_port=INADDR_ANY;
if(bind(sock,(struct sockaddr*)&server,sizeof(server))<0{
perror(“binding stream socket”);
exit(1);
}
length=sizeof(server);
if(getsockname(sock,,(struct sockaddr*)&server,&length)<0{
perror(“getting socket name”);
exit(1);
}
printf(“socket port #%d\n”,ntohs(sener.sin_port)),
listen(sock,5);
len=sizeof(struct sockaddr);
do{
msgsock=accept(sock,(struct sockaddr*)&tcpaddr,(int*)&len;
if(msgsock==-1)
perror(“accept”);
else do {
mense(buf,0,sizeof(buf));
if(rval=recv(msgsock,buf,1024))<0)
perror(“reading stream message”);
if(rval==0)
prinft(“ending connection\n”);
else
printf(-->%s\n”,buf);
}while (rval!=0);
closesocket(msgsock);
}whie(TURE);
exit(0);
}
求解每句话的意思,还有if(sock<0) ,if(bind(sock,(structsockaddr*)&server,sizeof(server))<0{
if(rval=recv(msgsock,buf,1024))<0
//为什么都要小于零,小于别的不可以么?if(msgsock==-1)为什么要等于-1?
搜索更多相关主题的帖子: socket  服务器  server  int  
2008-5-19 18:28
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.046756 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved