- 浏览: 1481977 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (691)
- linux (207)
- shell (33)
- java (42)
- 其他 (22)
- javascript (33)
- cloud (16)
- python (33)
- c (48)
- sql (12)
- 工具 (6)
- 缓存 (16)
- ubuntu (7)
- perl (3)
- lua (2)
- 超级有用 (2)
- 服务器 (2)
- mac (22)
- nginx (34)
- php (2)
- 内核 (2)
- gdb (13)
- ICTCLAS (2)
- mac android (0)
- unix (1)
- android (1)
- vim (1)
- epoll (1)
- ios (21)
- mysql (3)
- systemtap (1)
- 算法 (2)
- 汇编 (2)
- arm (3)
- 我的数据结构 (8)
- websocket (12)
- hadoop (5)
- thrift (2)
- hbase (1)
- graphviz (1)
- redis (1)
- raspberry (2)
- qemu (31)
- opencv (4)
- socket (1)
- opengl (1)
- ibeacons (1)
- emacs (6)
- openstack (24)
- docker (1)
- webrtc (11)
- angularjs (2)
- neutron (23)
- jslinux (18)
- 网络 (13)
- tap (9)
- tensorflow (8)
- nlu (4)
- asm.js (5)
- sip (3)
- xl2tp (5)
- conda (1)
- emscripten (6)
- ffmpeg (10)
- srt (1)
- wasm (5)
- bert (3)
- kaldi (4)
- 知识图谱 (1)
最新评论
-
wahahachuang8:
我喜欢代码简洁易读,服务稳定的推送服务,前段时间研究了一下go ...
websocket的helloworld -
q114687576:
http://www.blue-zero.com/WebSoc ...
websocket的helloworld -
zhaoyanzimm:
感谢您的分享,给我提供了很大的帮助,在使用过程中发现了一个问题 ...
nginx的helloworld模块的helloworld -
haoningabc:
leebyte 写道太NB了,期待早日用上Killinux!么 ...
qemu+emacs+gdb调试内核 -
leebyte:
太NB了,期待早日用上Killinux!
qemu+emacs+gdb调试内核
来自百度
[root@red54apple test]# cat udpclient.c #include <sys/types.h> #include <sys/socket.h> #include <string.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <arpa/inet.h> #include <unistd.h> #define MAXLINE 80 #define SERV_PORT 8888 void do_cli(FILE *fp, int sockfd, struct sockaddr *pservaddr, socklen_t servlen) { int n; char sendline[MAXLINE], recvline[MAXLINE + 1]; /* connect to server */ if(connect(sockfd, (struct sockaddr *)pservaddr, servlen) == -1) { perror("connect error"); exit(1); } while(fgets(sendline, MAXLINE, fp) != NULL) { /* read a line and send to server */ write(sockfd, sendline, strlen(sendline)); /* receive data from server */ n = read(sockfd, recvline, MAXLINE); if(n == -1) { perror("read error"); exit(1); } recvline[n] = 0; /* terminate string */ fputs(recvline, stdout); } } int main(int argc, char **argv) { int sockfd; struct sockaddr_in servaddr; /* check args */ if(argc != 2) { printf("usage: udpclient <IPaddress>\n"); exit(1); } /* init servaddr */ bzero(&servaddr, sizeof(servaddr)); servaddr.sin_family = AF_INET; servaddr.sin_port = htons(SERV_PORT); if(inet_pton(AF_INET, argv[1], &servaddr.sin_addr) <= 0) { printf("[%s] is not a valid IPaddress\n", argv[1]); exit(1); } sockfd = socket(AF_INET, SOCK_DGRAM, 0); do_cli(stdin, sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)); return 0; } [root@red54apple test]#
[root@red54apple test]# cat udpserv.c #include <sys/types.h> #include <sys/socket.h> #include <string.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #define MAXLINE 80 #define SERV_PORT 8888 void do_echo(int sockfd, struct sockaddr *pcliaddr, socklen_t clilen) { int n; socklen_t len; char mesg[MAXLINE]; for(;;) { len = clilen; /* waiting for receive data */ n = recvfrom(sockfd, mesg, MAXLINE, 0, pcliaddr, &len); /* sent data back to client */ sendto(sockfd, mesg, n, 0, pcliaddr, len); } } int main(void) { int sockfd; struct sockaddr_in servaddr, cliaddr; sockfd = socket(AF_INET, SOCK_DGRAM, 0); /* create a socket */ /* init servaddr */ bzero(&servaddr, sizeof(servaddr)); servaddr.sin_family = AF_INET; servaddr.sin_addr.s_addr = htonl(INADDR_ANY); servaddr.sin_port = htons(SERV_PORT); /* bind address and port to socket */ if(bind(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) == -1) { perror("bind error"); exit(1); } do_echo(sockfd, (struct sockaddr *)&cliaddr, sizeof(cliaddr)); return 0; } [root@red54apple test]# 检查方法 netstat -ln|grep 8888
发表评论
-
ios的safari使用自制ca证书测试webrtc
2018-08-20 13:31 2469这个需要注意 https://stackoverflow.c ... -
nginx push_upstream模块的websocket
2018-05-04 23:27 1227参考 https://www.rails365.net/art ... -
openresty聊天室的helloworld
2018-04-22 19:25 821openresty的websocket + redis的sub ... -
openresty websocket
2018-04-18 17:08 1545mac安装openresty brew install o ... -
nginx模块开发(三)upstream模块
2017-08-20 23:48 848使用nginx-1.13.4版本 三个文件ngx_http_ ... -
nginx模块开发(二) 使用gdb-dashboard调试
2017-08-11 18:47 2015gdb-dashboard或者 gdbgui 或者gdb自带 ... -
nginx模块开发(一)
2017-07-29 22:44 570决定重新整理nginx模块开发 helloworld con ... -
nginx带进度条的上传超大文件
2016-12-12 18:40 387911年写的 http://haoningabc.iteye.c ... -
nginx rewrite替代apache rewrite
2016-10-18 20:30 843清理chrome的缓存 chrome://appcache-i ... -
ffmpeg+nginx 的直播(2,直播摄像头和麦克风)
2016-05-28 20:21 4382假设我的服务器是centos7 192.168.139.117 ... -
ffmpeg+nginx 的直播(1,直播播放的视频文件)
2016-05-26 17:11 661564位操作系统centos7 ############ 1.一 ... -
nginx执行流程
2014-04-15 18:35 1084目标:打印nginx执行之后的流程方法 my_debug.c ... -
graphviz绘制nginx函数调用图
2014-04-14 18:43 1470以下是c的版本 c++代码去 http://www.cnblo ... -
nginx的远程调用模块
2014-03-24 14:31 2773在tx工作的时候,自己的虚拟机总是连接不上,公司封了ssh端口 ... -
通过nginx远程执行shell
2014-03-03 10:26 5098saltstack远程执行shell,远程管理等返回json已 ... -
nginx的upstream模块
2014-01-17 17:37 3206参考http://nginx.weebly.com/31034 ... -
nginx调试日志的几种方法
2013-10-17 22:54 23319最简单的方式就是 fprintf(stderr, &qu ... -
nginx HttpSecureLinkModule 过期token验证模块
2012-11-07 02:15 6091用途,确认一个链接比如下载pdf,在一定有效期内有用 可以加 ... -
nginx 上传进度条
2012-11-01 16:24 7628费劲周折,一晚上终于搞定了,nginx版本1.38 ----- ... -
ubuntu装openrestry
2012-03-01 00:16 1337apt-get install make apt-get in ...
相关推荐
本文将深入探讨"C++ Socket Hello World"这个话题,通过学习基础的Socket编程,你可以理解如何在C++环境下构建简单的TCP客户端(TCPClient)和服务器(TCPServer)。 首先,让我们了解什么是Socket。Socket是操作系统...
本篇将通过一个简单的"C++ UDP HelloWorld"示例,详细介绍如何在C++中使用UDP套接字进行通信,同时也会涉及VC++开发环境和SOCKET库的应用。 首先,我们来看UDP的特点。与TCP(Transmission Control Protocol)不同...
Socket1.SendData "Hello, UDP World!" ' 发送数据 ``` 5. **接收UDP广播**: 使用Socket控件的Input方法或CommEvent事件处理程序接收数据。当有数据到达时,事件会被触发。例如: ```vb Private Sub Socket1_...
在本示例中,“Netty之helloworld”旨在为初学者提供一个简单的入门教程,帮助理解Netty的工作原理和基本用法。 首先,Netty的核心概念包括Bootstrap(引导类)、Channel(通道)、Handler(处理器)和EventLoop...
在本例中,客户端向服务器发送“Hello World”,然后打印服务器返回的结果。 总结一下,PHP中的UDP通信涉及到以下关键点: 1. 使用`stream_socket_server`创建UDP服务器,监听特定的IP和端口。 2. 通过`stream_...
s.sendall(b'Hello, world') data = s.recv(1024) s.close() print('Received', repr(data)) ``` 以上就是关于socket网络编程的基础知识,包括TCP和UDP的使用。通过理解这些概念和操作,开发者能够构建自己的...
byte[] b = "Hello World!".getBytes(); DatagramPacket dp = new DatagramPacket(b, b.length, InetAddress.getByName("localhost"), 3000); ``` 3. **发送数据报**:通过DatagramSocket对象的send方法发送数据...
client_1 = threading.Thread(target=client, args=(server_address, "Hello, World!")) client_2 = threading.Thread(target=client, args=(server_address, "你好,世界!")) client_1.start() client_2.start() ...
在TCP/IP协议族中,Socket提供了基于TCP或UDP的通信机制。通过Socket,可以建立两个进程之间的连接,并在其间进行双向的数据传输。 ### 服务器端编程 在服务器端代码中,我们首先初始化Winsock库,确保系统能够...
socket_write($socket, "Hello, World!", strlen("Hello, World!")); ``` - **socket_close()**:关闭Socket连接。 ```php socket_close($socket); ``` #### 四、示例代码解析 下面是一个简单的PHP Socket...
write(sockfd, "Hello, World!\n", 13); /* 接收响应 */ char buf[MAXLINE]; ssize_t n; n = read(sockfd, buf, MAXLINE - 1); if (n > 0) { buf[n] = '\0'; printf("Client received: %s\n", buf); } ...
s.Send("Hello, World!"); byte[] buffer = new byte[1024]; s.Receive(buffer); ``` 五、结论 C# 中的 Socket 编程提供了一个强大且灵活的网络编程模型,允许开发人员使用 C# 进行网络编程。TCPClient 和 TCP...
- **简介**:socket模块提供了低级别的网络通信接口,可以用来创建TCP或UDP套接字。 - **基本使用**: - 创建一个socket对象:`import socket; s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)` - 绑定...
message = 'Hello, world' s.sendall(message.encode('utf-8')) data = s.recv(1024) print('Received:', data.decode('utf-8')) finally: s.close() ``` 这是一个简单的TCP Socket客户端示例,向本地主机的...
send(newsockfd, "Hello, World!", 13, 0); // 发送消息 char buffer[256]; recv(newsockfd, buffer, 255, 0); // 接收消息 ``` ##### 3.6 关闭Socket 完成所有通信后,应当关闭Socket以释放资源。 ```c #include...
echo "Hello, World!" | nc -u -b -w1 255.255.255.255 5000 ``` 这里,`-u`指定使用UDP,`-b`开启广播,`-w1`设置超时为1秒,目标IP是255.255.255.255,端口号是5000。 3. **编写C/C++程序进行UDP广播**: 要...
int bytes_sent = send(sock, "Hello, World!", strlen("Hello, World!") + 1, 0); int bytes_received = recv(sock, buffer, sizeof(buffer), 0); ``` `send()`和`recv()`返回实际发送或接收的字节数。 9. **...
首先,通过新建Win32 Application工程,选择典型的"Hello World"模板来初始化项目。然后,根据需求添加Socket相关的代码,包括初始化Winsock库(WSAStartup)、创建Socket(socket函数)、设置套接字地址结构...