【拿到游戏源码怎么使用】【vue 源码 简书】【ecshop淘宝客源码】c socket 源码

2024-11-24 22:56:57 来源:系统开发nft源码 分类:时尚

1.CSocket之UDP编程
2.为何要学习MFC?
3.如何理解MFC程序和WIN32程序的区别?

c  socket 源码

CSocket之UDP编程

       #include <stdio.h>

       #include <Winsock2.h>

       #pragma comment(lib,拿到游戏源码怎么使用"ws2_.lib")

       void main()

       {

        WORD wVersionRequested;

        WSADATA wsaData;

        int err;

        wVersionRequested = MAKEWORD( 1, 1);

        err = WSAStartup( wVersionRequested, &wsaData );

        if ( err != 0 )

        {

        return;

        }

        if ( LOBYTE( wsaData.wVersion ) != 1 ||

        HIBYTE( wsaData.wVersion ) != 1 )

        {

        WSACleanup( );

        return;

        }

        SOCKET sersocket=socket(AF_INET,SOCK_DGRAM,0);

        SOCKADDR_IN seraddr;

        seraddr.sin_addr.S_un.S_addr=htonl(INADDR_ANY);

        seraddr.sin_family=AF_INET;

        seraddr.sin_port=htons();

        bind(sersocket,(SOCKADDR*)&seraddr,sizeof(SOCKADDR));

        SOCKADDR clientaddr;

        int len=sizeof(SOCKADDR);

        char revbuf[];

        char sendbuf[];

        recvfrom(sersocket,revbuf,,0,(SOCKADDR*)&clientaddr,&len);

        printf("%s\n",revbuf);

        scanf("%s",&sendbuf);

        sendto(sersocket,sendbuf,strlen(sendbuf)+1,0,(SOCKADDR*)&clientaddr,len);

        closesocket(sersocket);

        WSACleanup();

       }

       #include <stdio.h>

       #include <Winsock2.h>

       #pragma comment(lib,"ws2_.lib")

       void main()

       {

        WORD wVersionRequested;

        WSADATA wsaData;

        int err;

        wVersionRequested = MAKEWORD( 1, 1);

        err = WSAStartup( wVersionRequested, &wsaData );

        if ( err != 0 )

        {

        return;

        }

        if ( LOBYTE( wsaData.wVersion ) != 1 ||

        HIBYTE( wsaData.wVersion ) != 1 )

        {

        WSACleanup( );

        return;

        }

        SOCKET sockclient=socket(AF_INET,SOCK_DGRAM,0);

        SOCKADDR_IN clientaddr;

        clientaddr.sin_addr.S_un.S_addr=inet_addr(".0.0.1");

        clientaddr.sin_family=AF_INET;

        clientaddr.sin_port=htons();

        int len=sizeof(SOCKADDR);

        char revbuf[];

        char sendbuf[];

        printf("请输入内容:\n");

        while(1)

        {

        scanf("%s",&sendbuf);

        sendto(sockclient,sendbuf,strlen(sendbuf)+1,0,(SOCKADDR*)&clientaddr,len);

        recvfrom(sockclient,revbuf,,0,(SOCKADDR*)&clientaddr,&len);

        printf("%s\n",revbuf);

        }

        closesocket(sockclient);

        WSACleanup();

       }

       å¤§åŒå°å¼‚,CSocket只是进行了封装而已,原理是一样的,编程要思路灵活才行。

为何要学习MFC?

       è¿˜æœ‰ä¸€ä¸ªé¢†åŸŸæˆ‘们不能忽略,那就是个人软件、小型软件。在猪八戒之类的威客网上软件开发的栏目搜一搜,可以发现大部分的windows程序开发的需求,威客们都是用MFC或Dephi来开发,当然,还有一些易语言。如果你要开发一款个人用的小软件,MFC是很好的选择。

       å¯¹äºŽè¿™ç§ä¸ªäººè½¯ä»¶ã€å°åž‹è½¯ä»¶ï¼ŒMFC还是有着很多优势的:

       1.体积小,静态编译后体积也不大。

       2.在各版本的windows上兼容性较好。

       3.对windowsAPI的调用较方便。

       å­¦ä¹ MFC不仅仅要学习用MFC,还要学习MFC的框架设计思想。

       å¦‚果仅仅会用MFC的话,可能在找工作的时候,一旦工作内容离开了MFC,就什么也不会了。MFC作为一个诞生了年的成熟的框架,其设计思想是很值得我们学习的。粗略读一读MFC源代码就会发现MFC的厉害之处,很多思想都让人很佩服,有时候看完一段源代码后,心里暗自感叹。无法想象MFC在那个连C++的STL都还没出现的年代,就用泛型编程技术写出了CList、CArray、CMap等容器。MFC不仅仅是将面向过程的API封装为面向对象的形式,他还在背后做了很多事情,包括简化一些过程,提高一些稳定性。如果让我把面向过程的windows

       socket API封装成面向对象的类,我肯定会这样想,嗯,socketAPI几乎每个函数的第一个参数都是SOCKET结构体,这是面向过程的特点,如果要封装为面向对象的类,自然是把这个结构体作为类的成员变量,然后封装socketAPI函数为类的方法,提供大量的默认参数,就OK。实际上并非这样,读一读MFC中CSocket的的源代码,就会发现实际上并非如此简单。MFC的CSocket类里,做了大量的工作,使我们用起来大大的方便了。如果你之前一直用socketAPI来开发网络程序,再来用MFC的CAsyncSocket和CSocket的话,会觉得,太方便了!仔细读一读MFC源码,真的对我们将来编写自己的类、设计自己的框架,有很大帮助!

       ä¸€ä¸ªå¥½çš„程序员,不能只是会用现成类库的方法。

       ä¸€ä¸ªå¥½çš„程序员,应该会封装、会设计类库、会设计框架。

       åœ¨ä¸€ä¸ªå®žé™…的项目中往往是这样的:我们需要开发一个windows平台上的软件,直接用windowsAPI吧,1.太麻烦2.面向过程的代码写的越多越头疼3.可重用性不强。使用现成类库吧,有时候无法满足我们特定的需求。这时候,我们就需要自己动手封装API,自己动手派生现成类库中的类,来添加方法。如果你不了解类库,派生下来后就会发现根本无从下手。很多公司在一些做了很久的项目上,往往都是有自己的类库、自己的框架,并不断的完善和扩展。这也是我们要学习类库、框架设计的原因。

如何理解MFC程序和WIN程序的区别?

       ä½ çš„理解不对

       Win api只是接口,只能被用到别的东西里才显的出价值,比如用在了MFC、DLL、串口、SOCKET,COM+。

       è€ŒMFC是基本类库,是属于C++的范畴,WIN API基本上都是结构类型的应用,里面没有类,所以MFC可以调用API,API不能调用MFC!

       é€šè¿‡ä¼ å£ï¼Œåˆ©ç”¨MFC可以将C++程序各种的WIN的环境,MFC只能在WIN环境下使用,API也是

       Win API是 Windows系统下位 Application Program Interface 应用程序接口,MFC是Microsoft Function Class 微软函数类库, 前者更加底层,在MFC程序里,可以调用WIN API的,MFC本来就用了很多WIN API,MFC编写的程序可以用在各种Windows环境下的

更多资讯请点击:时尚

热门资讯

linux源码同步

2024-11-24 22:10516人浏览

php 微网站源码

2024-11-24 21:591692人浏览

php微店源码_微商城php源码

2024-11-24 20:531992人浏览

竞拍系统 源码_竞拍系统源码

2024-11-24 20:292813人浏览

推荐资讯

chrome源码入门

1.《Chrome V8原理讲解》第十三篇 String类方法的源码分析2.最简最全,Android版Chromium源码下载+编译指南3.Chrome V8 执行 JavaScript 原理入门4.

微信诱导 源码

1.微信小程序反编译获取源码2.利用微信电脑最新版 反编译微信小程序 无需root3.付费进群源码微信封吗4.在微信上买的源码,1500,对方发空包,退不了款,可以报警吗5.微信第三方平台源码怎么使用

背景音乐 源码_背景音乐 源码下载

1.淘宝直播间怎么加入背景音乐?要注意什么?2.在浏览网页听到好听的背景音乐如何将该音乐下载下来3.如何从网页源代码中提取背景音乐?淘宝直播间怎么加入背景音乐?要注意什么? 现在愈来愈多的商家看到