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

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

卡卷网10个月前 (01-08)每日看点193

你可以尝试写一个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

分享给朋友:

相关文章

重磅消息:多个知名盗版网站关闭,倡导正版付费,迎接正版时代

重磅消息:多个知名盗版网站关闭,倡导正版付费,迎接正版时代

近年来,互联网上的免费资源站点经历了前所未有的变革,尤其是那些深受用户喜爱的影视、动漫及软件下载平台。随着全球范围内对于知识产权保护意识的提升以及相关法律法规的不断完善,曾经风光无限的一些网站正逐渐退出历史舞台。例如,在2023年的夏天,一...

你有突破100个粉丝了吗?

你有突破100个粉丝了吗?

100粉已经过啦!说说怎么过的吧,最开始疯狂的写回答,写想法,关注人数在50几以下持续有两周多,每天都关注变化,都是个位数增长,后来干脆不看了。到第三周时突然一周增长了100多人,一天十几人,想想应该归功于多互动,给他人点赞评论,让自己曝光...

下班后可以做点什么副业赚钱呢?

下班后可以做点什么副业赚钱呢?

首先说明一下,我分享的任务不需要交钱,也不需要入群,只需要你去平台学习就可以。如果有任何让你交钱,进群的任务,请警惕被割韭菜。今天给大家分享7大赚钱副业,新手小白0粉丝0门槛0技术都可以去做,不说大富大贵,但是赚个零花钱还是可以。如果你已经...

开发了个小程序,咋推广呢?

要是开发了个小程序,想推广的话,可以先从自己的朋友圈子下手,让亲戚朋友都帮忙转发宣传,这样能先有点人气。然后去一些跟你的小程序相关的论坛、社区啥的,发帖子介绍介绍,吸引有兴趣的人。还能找些网红、博主合作,要是他们觉得你的小程序不错,帮忙推荐...

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

最近一个月各大手机厂商的旗舰机扎堆发布,不知道大家看爽了没?这一代的性能续航大提升,最低 3599 元就能买到,同时老款也有不小的降幅,今年双 11 算是相当适合换手机的节点了!这次,小黑就给大家推荐双 11 期间值得购买的手机...150...

到什么程度才叫精通 Linux?

我们医院有个大牛。有一次,我的Linux电脑下载了Microsoft office 365 不能运行。于是买了2.5升装康师傅冰红茶找到大牛,让他帮忙解决。大牛白了我一眼,让我把安装包发给他,只见他输入一个命令将安装包打开,整个屏幕都是数字...

发表评论

访客

看不清,换一张

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