首    页 界面/窗口 网络/通讯 数据库 组件开发 图像/多媒体 NET/Web 其它技术 源码下载 资料下载 软件共享 软件外包 曲艺杂谈
栏目导航:  首    页  |  网络/通讯  |  TCP/IP   


TCP服务器/客户端


原作者:不详    源出处:不详    发布者:施昌权    发布类型:转载    发布日期:2008-08-27

                  

        TCP客户端源程序
        #include   <stdio.h>
        #include   <winsock2.h>
        #pragma   comment(lib,   "WS2_32.lib")

        #define   BUF_SIZE         1024
        #define   SERVER_IP       "127.0.0.1"
        #define   SERVER_PORT   5678

        int   main(int   argc,   char*   argv)
        {
                WSADATA   wsaData;
                SOCKADDR_IN   serverAddr;
                SOCKET   socketC;
                char   sendbuf[BUF_SIZE]   =   "Hello   TCP   World!";

                WSAStartup(MAKEWORD(1,1),   &wsaData);

                socketC   =   socket(AF_INET,   SOCK_STREAM,   IPPROTO_TCP);

                serverAddr.sin_family   =   AF_INET;
                serverAddr.sin_port   =   htons(SERVER_PORT);
                serverAddr.sin_addr.s_addr   =   inet_addr(SERVER_IP);

                connect(socketC,   (SOCKADDR*)&serverAddr,   sizeof(serverAddr));

                send(socketC,   sendbuf,sizeof(sendbuf),   0);

                closesocket(socketC);

                WSACleanup();

                return 0:
        }


        TCP服务器端源程序
        #include   <stdio.h>
        #include   <winsock2.h>
        #pragma   comment(lib,   "WS2_32.lib")

        #define   BUF_SIZE         1024
        #define   SERVER_IP       "127.0.0.1"
        #define   SERVER_PORT   5678

        int   main(int   argc,   char**   argv)
        {
                WSADATA   wsaData;
                SOCKET     socketL;     //   socket   for   listening
                SOCKET     socketC;     //   socket   for   Communication
                SOCKADDR_IN   serverAddr;
                int   nRet   =   -1;
                char   recvbuf[BUF_SIZE];

                WSAStartup(MAKEWORD(1,1),   &wsaData);

                socketL   =   socket(AF_INET,   SOCK_STREAM,   IPPROTO_TCP);

                serverAddr.sin_family             =   AF_INET;
                serverAddr.sin_port                 =   htons(SERVER_PORT);
                serverAddr.sin_addr.s_addr   =   htonl(INADDR_ANY);

                bind(socketL,   (SOCKADDR*)&serverAddr,   sizeof(serverAddr));

                listen(socketL,   5);

                socketC   =   accept(socketL,   NULL,   NULL);
                if   (socketC   !=   INVALID_SOCKET)
                {
                        nRet   =   recv(socketC,   recvbuf,   sizeof(recvbuf),   0);
                        if   (nRet   >   0)
                                printf("%s   ",   recvbuf);
                }

                closesocket(socketC);
                closesocket(socketL);

                WSACleanup();

                return   0;
        } 


 

关于我们 版权声明 广告服务 联系我们 友情链接 加入收藏
站长:施昌权    Email:scq2099yt@163.com    MSN:scq2099yt@live.cn    QQ:14046300    本站QQ群:67202409
Copyright © 2008     卓为VC(www.joyvc.cn)    All Rights Reserved    建议分辨率 1024×768
本站由施昌权制作维护
京ICP备09012297号