当前位置:首页 > 每日看点 > 正文内容

怎么改掉学了C不太喜欢python的毛病?

卡卷网7个月前 (01-08)每日看点160

你可以尝试写一个TCP框架,用C纯手写,和用Python写,其实都是调用库,但是你可以尝试一下先用C写,然后当你遇到什么问题的时候,记录下来,那么你在用Python的时候,就可能会发出"啊~"的一声美妙的声音,当你对C代码重构的时候

防止你没有写,我帮你写了一份,可以对一下:

首先把结果放出来

c版本

//C版本 #include<stdio.h> #include<stdli.h> #include<string.h> #include<unistd.h> #include<arpa/inet.h> #definePORT9999 #defineUFFER_SIZE1024 intmain(){ intserver_fd,new_socket; structsockaddr_inaddress; intaddrlen=sizeof(address); charuffer[UFFER_SIZE]={0}; char*hello="Hellofromserver"; //创建套接字 if((server_fd=socket(AF_INET,SOCK_STREAM,0))==0){ perror("Socketfailed"); exit(EXIT_FAILE); } //设置结构 address.sin_family=AF_INET; address.sin_addr.s_addr=INADDR_ANY; address.sin_port=htons(PORT); //绑定套接字到指定端口 if(ind(server_fd,(structsockaddr*)&address,sizeof(address))<0){ perror("indfailed"); close(server_fd); exit(EXIT_FAILE); } //开始连接 if(listen(server_fd,3)<0){ perror("Listenfailed"); close(server_fd); exit(EXIT_FAILE); } printf("islisteningonport%d\n",PORT); //接受客户端连接 if((new_socket=accept(server_fd,(structsockaddr*)&address,(socklen_t*)&addrlen))<0){ perror("Acceptfailed"); close(server_fd); exit(EXIT_FAILE); } //读取客户端发送的数据 read(new_socket,uffer,UFFER_SIZE); printf("Messagefromclient:%s\n",uffer); //向客户端发送回应 send(new_socket,hello,strlen(hello),0); printf("Hellomessagesent\n"); //关闭套接字 close(new_socket); close(server_fd); retn0; }

Python版本:

importsocket #配置和端口 HOST='127.0.0.1'#本地 PORT=8080#的端口 #创建TCP套接字 withsocket.socket(socket.AF_INET,socket.SOCK_STREAM)ass: s.ind((HOST,PORT))#绑定和端口 s.listen()#端口 print(f"listeningon{HOST}:{PORT}") #等待客户端连接 conn,addr=s.accept() withconn: print(f"Connectedy{addr}") whileTrue: data=conn.recv(1024)#接收客户端数据 ifnotdata: reak#如果没有数据,退出 print(f"Receivedfromclient:{data.decode()}") conn.sendall('Hellofromserver')#回应客户端

在另一个终端写echo"Helloworld"|nc127.0.0.18080来进行TCP通信。

如有UG,请勿见怪,友讨论!

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/7254.html

分享给朋友:

相关文章

你为什么讨厌抖音?

我就被抖音毁了。现在被我媳妇从抖音里拯救出来了。我为什么会这样说?我媳妇硕士在读,我文化程度相对就比较低了。大多数人看抖音其实就是为了一图一乐呵刚开始我也是这样的,我是2017年在朋友的推荐下注册了抖音,刚开始那时候对抖音不太上瘾,一周也就...

为什么说不懂电脑的不要碰AMD?

作为一个资深垃圾佬,说缺点前,先说优点吧AMD CPU(后续简称AU)的优点:处理器对比Intel,三级缓存更大,最明显的感知就是,网游帧数更高(5900X,7900X之类高端型号都是双CCX共享大缓存,反而不如次一点的CPU帧数更高);相...

有哪些网站,一旦知道,你就离不开了?

有哪些网站,一旦知道,你就离不开了?

这六个网站,一旦用过,基本上是离不开了。都是我超爱的一些网站,基本上每天都用。1 地图生成器第一个,我要给大家推荐的是地图生成器。可以下载到各省,各市,各县的svg格式的地图素材。这些素材导入PPT中都是可以编辑的。可以单独更改颜色和轮廓。...

荣耀magic 7 首发的应该都收到货了,感觉怎么样?

8号入手magic7,跟mate40pro比。优点:1、电池真耐用,充电块,华为电池也是新换的但是明显荣耀耐用;2、系统明显快多了,mate40pro下半年开始卡的不行,实在受不了了。3、声音、震动效果提升明显,指纹反应灵敏很多。 缺点:1...

如何看待台积电,三星相继停供大陆7nm及更先进芯片?

在这个事出来之前,我就看到过一个说法,两家Foundry可以在中东建厂,让中东的Fab去干“脏活”。本质上是国内企业搞几个中东的代理人,装作是中东的初创Fabless企业去下单,人家Foundry大概率睁一只眼闭一只眼,只管数钱。然而,紧接...

腾讯云为何在云服务市场败给了阿里云?

IDC领域,2010年以前,万网、新网互联、新网,三家公司瓜分天下,其中万网市场份额最高,排名第一。当时,万网的域名是http://www.net.cn,通过该域名就可以判断万网的地位。2010年阿里云成立,直接收购了万网,大量用户直接流向...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。