c语言的网络编程特点有哪些?(在线等待,答得好马上给分!)

c语言的网络编程特点有哪些?(在线等待,答得好马上给分!),第1张

1、你说得用C语言开发网络程序,一定指的是在WIN/UNIX/LINUX/SOLARIS/FreeBSD等多进程/多线程 *** 作系统下的编程,网络编程是基于B/S或者C/S架构的,无论那种,S都需要有多线程或者子进程的处理与客户端通信的能力,DOS下的C是不具备这个能力。另外,网络程序是对 *** 作系统多线程/多进程能力要求很高的应用,所以UNIX下的C编程能很好的满足要求。

2、网络编程只要遵从一种协议,语言是没有限定的,比较各种语言编写的网路应用的特点,归根结底还是回到这种语言已经它存在的 *** 作系统的特点。相比与其他语言开发的网络程序,用UNIX/SOKCET/C这种模式开发的网络应用能最大限度的利用系统资源,同时兼备UNIX的稳定性和C的高效率,是大型网络应用经常采用的方式,例如著名的freeBSD,大量的论坛都是这样的方式。很多网络应用,离开UNIX和C,在重连接负荷的情况下是无法工作的。

3、但是由于高效与通用是一对矛盾,UNIX/C开发的网络应用,比较靠近系统底层,代码的可移植性、可重用性相对于使用winsock编程的WINDOWS/C++方案的网络应用要差一些,windows的MFC已经对网络协议做了很多层的封装,使用C++来继承可以节省大量开发时间。

4、结论,如果你想开发自己全新的网络应用/协议,并且要承担很重的用户访问负荷,那么你可以用C,而且 *** 作系统要用UNIX/LINUX,如果你仅仅希望用已经成熟的internet协议写一些界面漂亮的网络应用,推荐你用WINDOWS/C++方式。

c语言可以写出来。

不过就象造一部汽车,你如果连零件都要自己手工做,可能要花上几十年时间,也不一定能成功。

时代不同了,写软件不是一个人能完成的事情

c++里面大量的接口和函数都由微软的系统工程师给你编好了的,用起来很方便,组装在一起就行了

如果是学习的话我推荐你去看看Linux、FreeBSD系统中与网络有关的那些命令程序的代码,比如ping、tcpdump等等,他们还有很多更强大的开源替代方案,比如mtr,都是学习的好材料。这些程序都追求把一件事情做到极致,所以往往结构清晰却又不会过于简单,你看看光是下载就有wget和curl两大神器够你折腾了。Linux和FreeBSD的这类自带命令虽然功能相同,但往往实现方式有很大差别,对比阅读效果甚好。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10894316.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-12
下一篇 2023-05-12

发表评论

登录后才能评论

评论列表(0条)

保存