《C++网络编程》读书笔记(一)

要在下面这段代码中找出10bug,你能做到么?

<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--> 1 #include < sys / types.h >
2 #include < sys / socket.h >
3
4
const int PORT_NUM = 10000 ;
5
6 int echo_server()
7 {
8 struct sockaddr_inaddr;
9 int addr_len;
10 char buf[BUFSIZ];
11 int n_handle;
12 // Createthelocalendpoint.
13 int s_handle = socket(PFJJNIX,SOCK_DGRAM, 0 );
14 if (s_handle == - 1 ) return - 1 ;
15
16 // Setuptheaddressinformationwheretheserverlistens.
17 addr.sin_family = AF_INET;
18 addr.sin_port = PORT_NUM;
19 addr.sin_addr.addr = INADDR_ANY;
20
21 if (bind(s_handle,( struct sockaddr * ) & addr,
22 sizeof addr) == - 1 )
23 return - 1 ;
24
25 // Createanewcommunicationendpoint.
26 if (n_handle = accept(s_handle,( struct sockaddr * ) & addr,
27 & addr_len) != - 1 ){
28 int n;
29 while ((n = read(s_handle,buf, sizeof buf}) > 0 )
30 write(n_handle,buf,n);
31
32 close(n_handle);
33 }
34 return 0 ;
35 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值