// webwormpro.cpp : 定義控制台應用程式的入口點。
//#include "stdafx.h"
#include #include #include #include #include #include //正規表示式
#include #include #include #include #include //網路套接字頭檔案
#pragma comment(lib,"ws2_32.lib") //網路通訊需要
using namespace std;
char host[500]; //存放主機陣列
int num = 1;
char othpath[800];
string allhtml;
vector photourl;
vector comurl;
map mp;
socket sock;
bool analyurl(char *url) //分析url
void regexgetimage(string &allhtml)
//c++11正則表達四提取上的url
//預處理程式把所有的部分連線起來形成給定匹配元素的正規表示式
}void regexgetcom(string &allhtml)
//提取網頁中的http://的url
}void preconnect()//socket進行網路連線
sockaddr_in sa = ;//windows或linux下的網路程式設計結構
int n = bind(sock, (sockaddr*)&sa, sizeof(sa));//繫結套接字
if (n == socket_error)
struct hostent *p = gethostbyname(host);//根據主機名得到主機資訊
if (p == null)
sa.sin_port=htons(80);//主機位元組順序表達的16位數字
memcpy(&sa.sin_addr, p->h_addr, 4);
n = connect(sock, (sockaddr*)&sa, sizeof(sa));//發起連線請求
if (socket_error == send(sock, reqinfo.c_str(), reqinfo.size(),0))//傳送資料 }
void outimage(string imageurl)//將命名,儲存在目錄
//與正確的區別差了下面這句
n = recv(sock, buf, sizeof(buf) - 1, 0);
char *cpos = strstr(buf, "\r\n\r\n");
file.write(cpos + strlen("\r\n\r\n"), n - (cpos - buf) - strlen("\r\n\r\n"));
while ((n = recv(sock, buf, sizeof(buf) - 1, 0)) > 0)
file.close();
}void putimagetoset()//解析整個html**
regexgetimage(allhtml);//c++正規表示式提取url
regexgetcom(allhtml);//提取網頁中的http://的url
}void bfs(string beginurl)//寬度優先搜尋演算法
photourl.clear();
vector::iterator it = comurl.begin();
for (it; it != comurl.end(); it++)
comurl.clear(); }}
int _tmain(int argc, _tchar * argv)
不同元素型別的交 差 並計算 無差別
from collections.abc import iterabledef pingpu x def flat gen x def iselement e return not isinstance e,iterable and not isinstance e,str for el in x ...
C和C 中 的差別
cc 取位址 取位址位運算 位運算兩個 表示與 兩個 表示與 引用 1.c 比c多了一種新特性,即引用 如下語句,c語言中會報錯,c 中不會,因為c 中這裡表示引用 void fun2 int p c語言中匯報錯是因為 p不管是那種用法都不能作為左值 2.c語言中按指標傳遞引數的例子如下 inclu...
C 指標和引用的差別
相同點 都是位址的概念 指標指向一塊記憶體,它的內容是所指記憶體的位址 而引用則是某塊記憶體的別名。不同點 1.非空區別,在任何情況下都不能使用指向空值的引用。乙個引用必須總是指向某些物件。因此如果你使用乙個變數並讓它指向乙個物件,但是該變數在某些時候也可能不指向任何物件,這是你應該把變數宣告為指標...