欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言實(shí)現(xiàn)簡單回聲服務(wù)器

 更新時(shí)間:2022年03月02日 09:10:28   作者:reg183  
這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)簡單回聲服務(wù)器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C語言實(shí)現(xiàn)簡單的回聲服務(wù)器,供大家參考,具體內(nèi)容如下

新建echo_server.c

#include<stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <string.h>
#include <ctype.h>
#include <arpa/inet.h>

#define SERVER_PORT 666

int main(void){
? ? int sock;
? ? struct sockaddr_in server_addr;

? ? sock=socket(AF_INET,SOCK_STREAM,0);

? ? bzero(&server_addr,sizeof(server_addr));

? ? server_addr.sin_family=AF_INET;
? ? server_addr.sin_addr.s_addr=htonl(INADDR_ANY);

? ? server_addr.sin_port=htons(SERVER_PORT);

? ? bind(sock,(struct sockaddr *)&server_addr,sizeof(server_addr));

? ? listen(sock,128);

? ? printf("等待客戶端的連接..\n");

? ? int done=1;
? ? while(done){
? ? ? ? struct sockaddr_in client;
? ? ? ? int client_sock;
? ? ? ? char client_ip[64];
? ? ? ? socklen_t client_addr_len;
? ? ? ? client_addr_len=sizeof(client);
? ? ? ? accept(sock,(struct sockaddr *)&client,&client_addr_len);
? ? ? ? printf("client ip:%s\n port :%d\n",
? ? ? ? ? ? ? ? inet_ntop(AF_INET,&client.sin_addr.s_addr,client_ip,sizeof(client_ip)),
? ? ? ? ? ? ? ? ntohs(client.sin_port));
? ? }
}

打包生成可執(zhí)行文件

[root@localhost c++]# gcc echo_server.c ?-o echo_server.exe

啟動(dòng)服務(wù)器

[root@localhost c++]# ./echo_server.exe?
等待客戶端的連接..

telnet訪問

[root@localhost ~]# telnet 127.0.0.1 666
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.

服務(wù)器端打印

[root@localhost c++]# ./echo_server.exe?
等待客戶端的連接..
client ip:127.0.0.1
?port :36156

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++中的string類型

    C++中的string類型

    這篇文章主要介紹了C++中的string類型,在C++當(dāng)中,除了char 類型,還有專門的字符串類型,就叫做string,下面文字將圍繞其相關(guān)資料展開詳細(xì)內(nèi)容,需要的朋友可以參考一下,希望對(duì)你有所幫助
    2021-11-11
  • OpenCV圖像文件批量讀取編程實(shí)例

    OpenCV圖像文件批量讀取編程實(shí)例

    這篇文章主要為大家詳細(xì)介紹了OpenCV圖像文件批量讀取編程實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • C++?Boost?Conversion超詳細(xì)講解

    C++?Boost?Conversion超詳細(xì)講解

    Boost是為C++語言標(biāo)準(zhǔn)庫提供擴(kuò)展的一些C++程序庫的總稱。Boost庫是一個(gè)可移植、提供源代碼的C++庫,作為標(biāo)準(zhǔn)庫的后備,是C++標(biāo)準(zhǔn)化進(jìn)程的開發(fā)引擎之一,是為C++語言標(biāo)準(zhǔn)庫提供擴(kuò)展的一些C++程序庫的總稱
    2022-11-11
  • C++實(shí)現(xiàn)模板方法模式的示例代碼

    C++實(shí)現(xiàn)模板方法模式的示例代碼

    這篇文章主要介紹了++實(shí)現(xiàn)模板方法模式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 實(shí)現(xiàn)posix消息隊(duì)列示例分享

    實(shí)現(xiàn)posix消息隊(duì)列示例分享

    這篇文章主要介紹了實(shí)現(xiàn)posix消息隊(duì)列示例,學(xué)習(xí)記錄鎖,線程互斥量,線程條件變量,內(nèi)存映射,信號(hào),線程的綜合應(yīng)用,需要的朋友可以參考下
    2014-02-02
  • C++實(shí)現(xiàn)洗牌發(fā)牌排序功能的示例代碼

    C++實(shí)現(xiàn)洗牌發(fā)牌排序功能的示例代碼

    本篇文章主要介紹了C++實(shí)現(xiàn)洗牌發(fā)牌排序功能的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • C語言實(shí)現(xiàn)電子時(shí)鐘程序

    C語言實(shí)現(xiàn)電子時(shí)鐘程序

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)電子時(shí)鐘程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • OpenGL實(shí)現(xiàn)中點(diǎn)劃線法

    OpenGL實(shí)現(xiàn)中點(diǎn)劃線法

    這篇文章主要為大家詳細(xì)介紹了OpenGL實(shí)現(xiàn)中點(diǎn)劃線法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C語言動(dòng)態(tài)內(nèi)存管理深入探討

    C語言動(dòng)態(tài)內(nèi)存管理深入探討

    動(dòng)態(tài)內(nèi)存是相對(duì)靜態(tài)內(nèi)存而言的。所謂動(dòng)態(tài)和靜態(tài)就是指內(nèi)存的分配方式。動(dòng)態(tài)內(nèi)存是指在堆上分配的內(nèi)存,而靜態(tài)內(nèi)存是指在棧上分配的內(nèi)存,本文帶你深入探究C語言中動(dòng)態(tài)內(nèi)存的管理
    2022-06-06
  • 用C語言實(shí)現(xiàn)三子棋

    用C語言實(shí)現(xiàn)三子棋

    這篇文章主要為大家詳細(xì)介紹了用C語言實(shí)現(xiàn)三子棋,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06

最新評(píng)論