您的位置:澳门皇冠金沙网站 > 操作系统 > (一)helloworld

(一)helloworld

2019-10-03 02:13

              *cout<<"you select cancel"<<endl*;

    }

       {

    }

       return  0;

    sockaddr_in  serverAddress;

              *cout<<"you select ok "<<endl*;

        if( (chatSocket = accept(serverSocket,(sockaddr*)&clientAddress,&addrlen))== SOCKET_ERROR){

       }

    SOCKET serverSocket = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);

#include <iostream>

        Sleep(3000);

}

            cout << "接受来自" << inet_ntoa(clientAddress.sin_addr) <<"的连接"<< endl;

   所谓windows编程就是指通过调用Windows API来和操作系统交互的编程方式。API就是与操作系统交互的各种功能函数,MessageBox就是一个API,调用它就可以弹出一个对话框。

 

     欢迎来到windows编程的世界,先给我们的windows打个招呼吧:

 

using namespace  std;

    hostent* pht = gethostbyname(buf);

       if(iSelect==IDOK)

         WSAStartup函数完成对Winsock服务的初始化,因此需要调用WSAStartup函数。使用Socket程序在使用Socket之前必须调用WSAStartup函数。该函数的第一个参数表示程序请求使用的Socket版本,高字节表示副版本,低字节表示主版本;操作系统利用第二个参数返回请求的Socket的版本信息。当一个应用程序调用WSAStartup函数的时候,操作系统根据请求的Socket版本来搜索响应的Socket库,绑定到Socket库到应用程序中。在之后的程序中可以调用Socket库中的其他的socket函数。

       }else

    WSADATA wsa ;// WSADATA 结构是用来保存函数WSAStartup 返回的Windows socket初始化信息

{

    }else{

       *system*("pause");

            continue;

澳门皇冠金沙网站,       int iSelect=MessageBox(NULL,TEXT("你好,windows世界,我来了!"),TEXT("你好,世界"),MB_OKCANCEL);

网络编程1. 套接字编程基本知识

       {

                   lpWSAData: 指向一个WSADATA的数据结构的指针,用于接收Windows Sockets实现的细节。

#include <Windows.h>

        cout << "成功绑定端口:" << listen_port << endl;

int  main()

1.首先网络编程使用C++,要引入一些库

  1. WSAStartup 函数的介绍

         int WSAStartup(WORD wVersionRequest, LPWSADATA lpWSAData);

        cout << "成功监听端口:"<< listen_port  << endl;

        }

        cout << "h_aliases:" << pht->h_aliases << endl;

        cout << "创建套接字失败" << endl;

 

        //cout << AF_INET << endl;

using namespace std;

   

    }

    }

        cout << "获取本地主机的Name失败:"<<WSAGetLastError()<< SOCKET_ERROR << endl;

 

    }

 

        }

        cout << "套接字初始化失败"<<  endl;

        cout << "套接字初始化成功" << endl;

 

        cout << "h_addrtype:" <<  pht->h_addrtype << endl;

 

    if(pht==NULL){

        cout << "套接字初始化失败"<<  endl;

}

   

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

        cout << "h_aliases:" << pht->h_aliases << endl;

hostent 是一个数据结构,保存从gethostbyname返回的信息,包括主机的IP地址类型IPV4,IPV6,主机的别名,主机的IP长度,h_addr_list[]

3.1 gethostname() // 获取本地主机的主机名

 

        cout << "绑定套接字端口失败" << endl;

    serverAddress.sin_port = htons(listen_port);

    memset(&serverAddress,0,sizeof(serverAddress));

         参数介绍:

hostent* pht = gethostbyname("www.google.com");

    }else{

 

    if(serverSocket == INVALID_SOCKET){

int main(){

        Sleep(3000);

 

}

        Sleep(3000);

        cout <<"本地主机的名字是:" << buf << endl;

         并且需要使用静态链接库,

    int listen_port = 8999;

    WSADATA wsa ;// WSADATA 结构是用来保存函数WSAStartup 返回的Windows socket初始化信息

    }else{

        cout <<"本地主机的名字是:" << buf << endl;

    char buf[255];

        cout << "获取本地主机的Name失败:"<<WSAGetLastError()<< SOCKET_ERROR << endl;

    }else{

#include <process.h>

#include <iostream>

        for(int i = 0; pht->h_addr_list[i] != NULL;i++){

   

    }else{

        exit(-1);

        cout << "h_addrtype:" <<  pht->h_addrtype << endl;

    while(true){

        int addrlen = sizeof(clientAddress);

本文由澳门皇冠金沙网站发布于操作系统,转载请注明出处:(一)helloworld

关键词:

  • 上一篇:没有了
  • 下一篇:没有了