- 论坛徽章:
- 0
|
我按照书上的服务器例子敲了代码,用自己写的客户端和服务器连接时还是出现
connection refused
我把代码和书上的服务器代码对照了好多遍,也没有找出什么错误。
书中的代码,我除了没有用作者使用的包裹函数外,其他是没有什么不同的,为什么仍然不能连接呢?
我敲的服务器端代码如下
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<arpa/inet.h>
#include<errno.h>
#define MAXLINE 4096
int main(int argc,char * argv[])
{
int listenfd,connfd;
struct sockaddr_in servaddr;
char buff[MAXLINE];
time_t ticks;
if(( listenfd=socket(AF_INET,SOCK_STREAM,0))<0)
perror("<errno>" ;
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
servaddr.sin_port=htons(13);/*daytime server*/
bind(listenfd,(struct sockaddr *)&servaddr,sizeof(servaddr));
listen(listenfd , 1024);
for(;
{
connfd=accept(listenfd,(struct sockaddr *)NULL,NULL);
ticks=time(NULL);
snprintf(buff,sizeof(buff),"%.24s\r\n",ctime(&ticks));
write(connfd,buff,strlen(buff));
close(connfd);
}
}
客户端,我就用了第一次发的那个,感觉对调试网络编程的代码,一点头绪都找不到,不知道如何才能找出错误在哪,希望得到大家的帮助 |
|