📄 server.c
字号:
#define LISTENQ 1024
#define SA struct sockaddr
#include "curses.h"
#include "stdlib.h"
#include "stdio.h"
#include "errno.h"
#include "netdb.h"
#include "string.h"
#include "sys/time.h"
#include "sys/types.h"
#include "sys/socket.h"
#include "netinet/in.h"
#include "memory.h"
#include <time.h>
/* Define bzero() as a macro if it's not in standard C library. */
#ifndef HAVE_BRZEO
#define bzero(ptr,n) memset(ptr,0,n)
#endif
#define UNIXEPOCH 2208988800UL /* UNIX epoch, in UCT secs */
int main(int argc,char * * argv)
{ unsigned int alen;
time_t now;
int msock,ssock;
struct sockaddr_in servaddr;//服务器IP地址、端口信息
struct sockaddr_in fsin;
msock = socket(AF_INET,SOCK_STREAM,0);//创建套接字
bzero(&servaddr,sizeof(servaddr)); //初始化服务器信息及接受连接的地址信息
servaddr.sin_family = AF_INET;
servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
servaddr.sin_port = htons(13);
bind(msock,(SA *)&servaddr,sizeof(servaddr));//绑定套接字
listen(msock,LISTENQ);
while(1)
{ alen = sizeof(fsin);
ssock = accept(msock, (struct sockaddr *)&fsin, &alen);//接受响应
(void) time(&now);
now = htonl((unsigned long)(now + UNIXEPOCH));
(void) write(ssock, (char *)&now, sizeof(now));//发送回应
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -