以前介绍了网络字节序。网络编程之网络字节序详解
今天就来实现一下简单的网络程序。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
先看几个函数文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
// 创立socket套接字
int socket;
// 绑定服务器地址
int bind;
// 接管连接
int accept;
// 连接服务器
int connect;
服务器端程序:文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
typedef struct _MSG { int main struct sockaddr_in serv_addr; char message[] = &34;;文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
if serv_sock = socket; memset); if &serv_addr, sizeof) == -1) { if == -1) { clnt_addr_size = sizeof; for { write&msg, sizeof); close; return 0;include <stdlib.h>
include <unistd.h>
include <sys/socket.h>文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
int id;
short length;
short reserve;
char content[100];
} MSG;文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
{
int serv_sock;
int clnt_sock;文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
struct sockaddr_in clnt_addr;
socklen_t clnt_addr_size;文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
{
printf;
return -1;
}文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
if {
printf;
return -1;
}文章源自微观生活(93wg.com)微观生活-https://93wg.com/6307.html
serv_addr.sin_family = AF_INET;
// 转换为网络字节序,INADDR_ANY表示绑定本机所有ip地址
serv_addr.sin_addr.s_addr = htonl;
// 将端口转换为网络字节序
serv_addr.sin_port = htons);
printf;
return -1;
}
printf;
return -1;
}
clnt_sock = accept&clnt_addr, &clnt_addr_size);
if {
printf;
}
MSG msg;
msg.id = htonl;
msg.length = htons);
msg.reserve = htons;
strcpy;
}
close;
}
客户端程序:
typedef struct _MSG { int main if sock = socket; memset); if &serv_addr, sizeof) == -1) { for { 以上就是微观生活(93wg.com)关于“C语言进行Linux网络编程”的详细内容,希望对大家有所帮助!
include <stdlib.h>
include <unistd.h>
include <sys/socket.h>
int id;
short length;
short reserve;
char content[100];
} MSG;
{
int sock;
struct sockaddr_in serv_addr;
int str_len;
{
printf;
return -1;
}
if {
printf;
return -1;
}
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = inet_addr;
serv_addr.sin_port = htons);
printf;
return -1;
}
MSG msg;
str_len = read);
if {
printf;
break;
}
msg.id = ntohl;
msg.length = ntohs;
printf : %3d, %3d, %s\\n&
评论