📄 def_function.c
字号:
#include "a.h"
int creat_socket(int domain, int type, int protocol)
{
int sockfd;
sockfd = socket(domain, type, protocol);
if (sockfd < 0)
{
perror("socket");
exit(-1);
}
return sockfd;
}
#ifndef LINUX
int init_socket(BYTE blow, BYTE high)
{
// WORD wVersionRequested;
WSADATA wsaData;
if (WSAStartup(MAKEWORD(blow, high), &wsaData) != 0)
{
perror("WSAStartup failed!");
exit(-1);
}
if ((LOBYTE(wsaData.wVersion) != blow) || (HIBYTE(wsaData.wVersion) != high))
{
WSACleanup();
exit(-1);
}
return 0;
}
#endif
int bind_socket(int sockfd, struct sockaddr_in * addr, size_t addr_len)
{
if (bind(sockfd, (struct sockaddr *)addr, addr_len) < 0)
{
perror("bind");
exit(-1);
}
return 0;
}
int listen_connect(int sockfd)
{
if (listen(sockfd, BACKLOG) < 0)
{
perror("listen");
exit(-1);
}
return 0;
}
int accept_connect(int sockfd, struct sockaddr_in * client_addr, size_t * addr_len)
{
int new_fd;
new_fd = accept(sockfd, (struct sockaddr*)client_addr, addr_len);
if (new_fd < 0)
{
perror("accept");
exit(-1);
}
return new_fd;
}
int connect_sever(int sockfd, struct sockaddr_in * addr, size_t addr_len)
{
if ((connect(sockfd, addr, addr_len)) < 0)
{
perror("connect");
exit(-1);
}
return 0;
}
#ifdef LINUX
int get_time(int * numbytes, long int * buf)
#else
int get_time(int *numbytes, DWORD * buf)
#endif
{
#ifdef LINUX
struct timeval st_time;
struct timezone st_zone;
if ((gettimeofday(&st_time, &st_zone)) < 0)
{
perror("gettimeofday");
exit(-1);
}
buf[0] = st_time.tv_sec;
buf[1] = st_time.tv_usec;
// printf("buf[0]=%ld\n", buf[0]);
// printf("buf[1]=%ld\n", buf[1]);
*numbytes = 8;
#else
DWORD st_time;
st_time = timeGetTime();
buf[0] = st_time;
printf("st_time=%ld\n", buf[0]);
*numbytes = 4;
#endif
return 0;
}
#ifdef LINUX
int get_rtt(long int * buf)
#else
int get_rtt(DWORD * buf)
#endif
{
double RTT;
#ifdef LINUX
struct timeval rf_time;
struct timezone rf_zone;
if ((gettimeofday(&rf_time, &rf_zone)) < 0)
{
perror("gettimeofday");
exit(-1);
}
RTT = rf_time.tv_sec - buf[0] +(rf_time.tv_usec - buf[1]) * 0.000001;
#else
DWORD rf_time;
rf_time = timeGetTime();
RTT = (rf_time - buf[0]) * 0.001;
#endif
printf("RTT is %f\n",RTT);
return 0;
}
int close_socket(int sockfd)
{
#ifdef LINUX
close(sockfd);
#else
closesocket(sockfd);
#endif
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -