Linux环境C/C++起Socket Server监听8080端口的代码实现
来源:互联网 发布:简单片头制作软件 编辑:程序博客网 时间:2024/05/16 09:47
代码抄录自《UNUX网络编程 卷一》,在实现开发环境中调试通过,经测试发现可以正常监听。
开发环境:CentOS,g++,VIM
功能:C++实现Socket通信的Server端,实现监听8080端口接收到的消息。
#include <arpa/inet.h>#include <sys/types.h> /* See NOTES */#include <sys/socket.h>#include <stdio.h>#include <strings.h>#include <string.h>#include <time.h>#include <unistd.h>const int MAXLINE = 4096;const int LISTENQ = 1024;int main(int argc, char **argv){ int listenfd, connfd; socklen_t len; struct sockaddr_in servaddr, cliaddr; char buff[MAXLINE]; time_t ticks; bzero(&servaddr, sizeof(servaddr)); servaddr.sin_family = AF_INET; servaddr.sin_addr.s_addr = htonl(INADDR_ANY); servaddr.sin_port = htons(8080); listenfd = socket(AF_INET, SOCK_STREAM, 0); bind(listenfd, (struct sockaddr *)&servaddr, sizeof(servaddr)); listen(listenfd, LISTENQ); for ( ; ; ) { len = sizeof(cliaddr); connfd = accept(listenfd, (struct sockaddr *) &cliaddr, &len); printf("connect from %s, port %d\n", inet_ntop(AF_INET, &cliaddr.sin_addr, buff, sizeof(buff)), ntohs(cliaddr.sin_port)); read(connfd, buff, strlen(buff)); printf("Recive msg: %s\n", buff); bzero(buff, sizeof(buff)); ticks = time(NULL); snprintf(buff, sizeof(buff), "%.24s\r\n", ctime(&ticks)); write(connfd, buff, strlen(buff)); printf("Send msg: %s\n", buff); close(connfd); } return 0;}
阅读全文
0 0
- Linux环境C/C++起Socket Server监听8080端口的代码实现
- Linux C监听端口
- linux c socket server
- 经典 C语言 socket SERVER,CLIENT 端代码实现
- linux c socket client与server实例代码
- linux socket 程序被ctrl+c或者异常终止,再次起程序时提示该端口号已被绑定,解决办法如下
- Linux C语言实现的Socket通信
- Linux下Socket的实现(C++)
- Linux环境下的c语言socket编程实现交互通信
- 实现服务器端的多线程SOCKET Server C++/VC 【转】
- 实现服务器端的多线程SOCKET Server C++/VC
- 实现服务器端的多线程SOCKET Server C++/VC
- 实现服务器端的多线程SOCKET Server C++/VC
- 经典代码IOCP(完成端口)的C#.Net实现
- 经典代码IOCP(完成端口)的C#.Net实现----解读
- Linux c socket 实现http
- Perl实现的C/S模式的本地端口发送与监听
- linux socket tcp Server c语言编写
- SpringMVC解决中文乱码
- 深入理解JAVA虚拟机读书笔记----虚拟机性能监控与故障处理工具
- [简单dp]H
- 九月六日 学习笔记_SQL语句(一)
- 手机和电脑端分开跳转
- Linux环境C/C++起Socket Server监听8080端口的代码实现
- B
- 测试new和克隆创建对象的效率差异
- 周期股三季报预告增长幅度较大的个股
- HDU 6105 Gameia(博弈论+树形DP)
- java04_数据结构心得
- strcpy函数
- J2EE之servlet
- 暑期项目实训之健康宝APP(七)