逐句翻译来啊.高分 说话算话........

来源:百度知道 编辑:UC知道 时间:2024/06/20 06:07:34
#include <stdio.h>
#include <string.h>
#include <winsock.h>

int main(int argc, char *argv[]) {

int mysocket;

int pcount = 0;

struct sockaddr_in my_addr;

WSADATA wsaData;

WORD wVersionRequested=MAKEWORD(1,1);

if(argc < 3) {

printf("usage: %s <host> <maxport>\n", argv[0]);

exit(1);

}

if (WSAStartup(wVersionRequested , &wsaData)){

printf("Winsock Initialization failed.\n");

exit(1);

}

for(int i=1; i < atoi(argv[2]); i++){

if((mysocket = socket(AF_INET, SOCK_STREAM,0)) == INVALID_SOCKET){

printf("Socket Error");

exit(1);

}

my_addr.sin_family = AF_INET;

my_addr.sin_port = htons(i);

my_addr.sin_addr.s_addr = inet_addr(argv[1]);

if(connect(mysocket, (struct soc

//
//此程序探查指定的主机打开了哪些端口。
//
#include <stdio.h>
#include <string.h>
#include <winsock.h>

int main(int argc, char *argv[]) {

int mysocket;
int pcount = 0;
struct sockaddr_in my_addr;
WSADATA wsaData;
WORD wVersionRequested=MAKEWORD(1,1);
if(argc < 3) {
printf("usage: %s <host> <maxport>\n", argv[0]);
//由上句知程序命令行的第一个参数指定主机,第二个参数制定欲探查的端口上限。
exit(1);
}

if (WSAStartup(wVersionRequested , &wsaData)){
//凡是winsock程序都要调用此函数进行初始化。此处第一个参数指定winsock版本号为Version 1.1
printf("Winsock Initialization failed.\n");
exit(1);
}

for(int i=1; i < atoi(argv[2]); i++){ //从端口1开始探查.
//建立套接字. 建立套接字成功才能建立连接.
//AF_INET表示Internet地址格式, SOCK_STREAM表示TCP类型, 第三个参数指定协议,0表示不想指定协议.
if((mysocket = socket(AF_INET, SOCK_STREAM,0)) == INVALID_SOCKET){
printf("Socket Error");
exit(