参考我看到的那篇文章(要谢谢作者,写的还是很通俗易懂的,地址见下文),本代码可以作为socket编程的一个小入门。 这是一个参考以下文章实现的简单的echo实例: http://www.cppblog.com/lf426/archive/2008/07/08/55641.html 文章中用c++实现,我用c写了一下,没什么区别。主要是这里要注意: 原文中端口赋值是用的htonl: serv_addr.sin_port = htonl(LISTEN_PORT); 实际中会发现编译是可以通过的,但是不能使用,gdb跟踪发现port被赋值0,后看sin_port类型可以看到是short int型,因此这句应改为: serv_addr.sin_port = htons(LISTEN_PORT); 编译: gcc -o echo echo.c 后运行: ./echo & 可以这样测试: telnet localhost 5000 然后输入点东西试试吧:)
2022-03-15 00:19:53 2KB linux socket example c
1
随着Linux 操作系统的不断推广,Linux 环境下的Socket 开发和研究已成为人们关注的热点。Socket 既适用于同一台计算机上的进程间通信,也适用于网络环境中的进程间通信。
2022-01-03 09:35:43 149KB linux socket
1
Linux系统下采用多线程方案的Socket编程实现了服务端和客户端的通信
2021-12-27 14:29:08 862KB Linux Socket Pthread
1
在linux下用socket的多线程通讯实现一个服务器和多个客户端之间的相互通讯。如果要实现多个和多个客户端通讯,则只需将里面的thread_client编译成多个文件即可。代码绝对是能用的~有什么疑问请留言~希望对大家伙有帮助
2021-12-22 18:42:49 4KB linux socket 多线程 thread
1
[]在_Linux_上实现基于Socket_的多进程实时通信
2021-12-19 15:07:34 46KB Linux Socket
1
linux系统,socket通信服务端及客户端,间隔50ms发送一次数据,对方接收,用于测试网络数据的发送接收。
2021-12-14 15:39:32 3KB linux socket
1
linux socket编程,通过实例由浅入深,涵盖client/server设计,部分章节的扩展有助于深入了解TCP/IP协议。
2021-11-25 13:16:49 2.81MB linux socket network programming
1
在linux下编写的socket 服务器和客户端,可以进行简单的通讯
2021-11-25 12:55:16 9KB Linux socket 实例
1
实战Linux+Socket编程1.pdf实战Linux+Socket编程1.pdf实战Linux+Socket编程1.pdf实战Linux+Socket编程1.pdf实战Linux+Socket编程1.pdf实战Linux+Socket编程1.pdf实战Linux+Socket编程1.pdf
2021-11-24 21:13:33 18.98MB linux socket 多线程
1
客户端: #include #include // 包含套接字函数库 #include #include // 包含AF_INET相关结构 #include // 包含AF_INET相关操作的函数 #include #include #include #define PORT 6789 #define IP_ADDR "127.0.0.1" #define SIZE 10240 int main() { struct tm *timeptr; time_t timeval; //时间变量 char tm[50]; int sockfd; // 用于保存客户套接字标识符 int len; // 用于客户消息长度 struct sockaddr_in address; // 定义客户套接字地址结构体 int result; sockfd = socket(AF_INET,SOCK_STREAM, 0); // 定义套接字类型 address.sin_family = AF_INET; // 定义套接字地址中的域 address.sin_addr.s_addr = htonl(INADDR_ANY); address.sin_addr.s_addr = inet_addr(IP_ADDR); // 定义套接字地址 address.sin_port = htons(PORT); // 定义套接字端口 char buf[100]; // 定义要传送的消息 memset(buf,0,100); char str[90]; //存贮输入的语句 char shmaddr[SIZE]; //接受服务器发送的全部聊天数据 int i=0; char myname[100]; char say[10]={"说:"}; printf("欢迎来到聊天室,请输入你的姓名:"); scanf("%s",myname); len = sizeof(address); result = connect(sockfd, (struct sockaddr *) &address, len); // 请求连接 if (result == -1) { perror("Connect failed"); return 1; } printf("%s成功登录服务器:\n",myname); pid_t pid; pid=fork(); if(pid==-1) { printf("fork failed"); } int sendbytes=0; if(pid==0) //子进程用于发送数据 { while(1) { scanf("%s",str); (void)time(&timeval); strcpy(tm,ctime(&timeval)); strcpy(buf,myname); //姓名传入buf中 strcat(buf,":"); strcat(buf,str); strcat(buf," ["); strc
2021-11-20 21:54:19 5KB linux socket
1