[linux] C语言Linux系统编程-socket回声客户端
发布时间:2020-12-13 14:17:37 所属栏目:Linux 来源:网络整理
导读:回声客户端: 1. 2. #define BUF_SIZE 100 1.# 2.#define scanf("%s",bufSend); 1.scanf() 2. div class="cnblogs_code" #include .h> .h> BUF_SIZE 100 serv_sock = serv_addr, , (serv_addr)); serv_addr.sin_family = AF_INET; serv_addr.sin_addr.s_addr
回声客户端: 1. 2. #define BUF_SIZE 100 1.# 2.#define scanf("%s",bufSend); 1.scanf() 2.
<div class="cnblogs_code"> #include <span style="color: #000000"> close(clnt_sock); echo_client.c #include
</span><span style="color: #008000">//</span><span style="color: #008000">回声客户端</span>
<span style="color: #0000ff">char</span><span style="color: #000000"> bufSend[BUF_SIZE];
printf(</span><span style="color: #800000">"</span><span style="color: #800000">输入字符串: </span><span style="color: #800000">"</span><span style="color: #000000">);
scanf(</span><span style="color: #800000">"</span><span style="color: #800000">%s</span><span style="color: #800000">"</span><span style="color: #000000">,bufSend);
write(sock,bufSend,</span><span style="color: #0000ff">sizeof</span><span style="color: #000000">(bufSend));
</span><span style="color: #008000">//</span><span style="color: #008000">读取服务器传回的数据</span>
<span style="color: #0000ff">char</span> buffer[<span style="color: #800080">40</span><span style="color: #000000">];
read(sock,</span><span style="color: #0000ff">sizeof</span>(buffer)-<span style="color: #800080">1</span><span style="color: #000000">);
printf(</span><span style="color: #800000">"</span><span style="color: #800000">服务器返回: %sn</span><span style="color: #800000">"</span><span style="color: #000000">,buffer);
</span><span style="color: #008000">//</span><span style="color: #008000">关闭套接字</span>
<span style="color: #000000"> close(sock); } 效果: 使用while(1) 让代码进入死循环,一直监听客户端的请求 echo_server.c ( clnt_sock = accept(serv_sock,&
</span><span style="color: #0000ff">char</span> buffer[BUF_SIZE]; <span style="color: #008000">//</span><span style="color: #008000">缓冲区</span>
<span style="color: #0000ff">int</span> strLen = read(clnt_sock,BUF_SIZE); <span style="color: #008000">//</span><span style="color: #008000">接收客户端发来的数</span>
<span style="color: #000000">据 <span style="color: #008000">//<span style="color: #008000">关闭套接字 <span style="color: #000000"> close(clnt_sock); } echo_client.c (
sock = socket(AF_INET,
&serv_addr,(serv_addr));
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = inet_addr();
serv_addr.sin_port = htons();
connect(sock,
</span><span style="color: #008000">//</span><span style="color: #008000">回声客户端</span>
<span style="color: #0000ff">char</span><span style="color: #000000"> bufSend[BUF_SIZE];
printf(</span><span style="color: #800000">"</span><span style="color: #800000">输入字符串: </span><span style="color: #800000">"</span><span style="color: #000000">);
scanf(</span><span style="color: #800000">"</span><span style="color: #800000">%s</span><span style="color: #800000">"</span><span style="color: #000000">,bufSend);
write(sock,</span><span style="color: #0000ff">sizeof</span><span style="color: #000000">(bufSend));
</span><span style="color: #008000">//</span><span style="color: #008000">读取服务器传回的数据</span>
<span style="color: #0000ff">char</span> buffer[<span style="color: #800080">40</span><span style="color: #000000">];
read(sock,</span><span style="color: #0000ff">sizeof</span>(buffer)-<span style="color: #800080">1</span><span style="color: #000000">);
printf(</span><span style="color: #800000">"</span><span style="color: #800000">服务器返回: %sn</span><span style="color: #800000">"</span><span style="color: #000000">,buffer);
</span><span style="color: #008000">//</span><span style="color: #008000">关闭套接字</span>
close(sock);}</pre>
?效果: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |