青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

woaidongmao

文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
數(shù)據(jù)加載中……

libcurl應(yīng)用:如何把下載內(nèi)容寫入內(nèi)存

libcurl的文檔中有getinmemory.c這個(gè)例子,把下載的網(wǎng)頁(yè)寫入自己定義的一個(gè)memorystruct中,看了這個(gè)例子的做法,它需要自己照顧內(nèi)存的開辟,特別是需要在curl_easy_perform的調(diào)用函數(shù)中釋放已開辟的內(nèi)存,很不利于函數(shù)的封裝,而且應(yīng)用于multihandle的時(shí)候,運(yùn)行時(shí)會(huì)出莫名其妙的assert錯(cuò)誤。因此改寫了一下,將下載的內(nèi)容放入stlstring中,這樣根本不需要自己照顧內(nèi)存的開辟和釋放。源代碼如下:

#include <string>
#include "curl.h"

using namespace std;
static char errorBuffer[CURL_ERROR_SIZE];
static int writer(char *, size_t, size_t, string *);
static bool init(CURL *&, char *,string *);

int main()
{
    CURL *conn = NULL;
    CURLcode code;
string buffer;
 
    curl_global_init(CURL_GLOBAL_DEFAULT);
    char* url=" if (!init(conn,url,&buffer ))
    {
        fprintf(stderr, "Connection initializion failed\n");
        exit(EXIT_FAILURE);
    }
    code = curl_easy_perform(conn);
  
    if (code != CURLE_OK)
    {
        fprintf(stderr, "Failed to get '%s' [%s]\n", url, errorBuffer);
        exit(EXIT_FAILURE);
    }
curl_easy_cleanup(conn);
printf("%s\n",buffer.c_str());
    return 0;
   
}

static bool init(CURL *&conn, char *url,string *p_buffer)
{
    CURLcode code;
    conn = curl_easy_init();
    if (conn == NULL)
    {
        fprintf(stderr, "Failed to create CURL connection\n");
        exit(EXIT_FAILURE);
    }
    code = curl_easy_setopt(conn, CURLOPT_ERRORBUFFER, errorBuffer);
    if (code != CURLE_OK)
    {
        fprintf(stderr, "Failed to set error buffer [%d]\n", code);
        return false;
    }
    code = curl_easy_setopt(conn, CURLOPT_URL, url);
    if (code != CURLE_OK)
    {
        fprintf(stderr, "Failed to set URL [%s]\n", errorBuffer);
        return false;
    }
    code = curl_easy_setopt(conn, CURLOPT_FOLLOWLOCATION, 1);
    if (code != CURLE_OK)
    {
        fprintf(stderr, "Failed to set redirect option [%s]\n", errorBuffer);
        return false;
    }
    code = curl_easy_setopt(conn, CURLOPT_WRITEFUNCTION, writer);
    if (code != CURLE_OK)
    {
        fprintf(stderr, "Failed to set writer [%s]\n", errorBuffer);
        return false;
    }
    code = curl_easy_setopt(conn, CURLOPT_WRITEDATA, p_buffer);
    if (code != CURLE_OK)
    {
        fprintf(stderr, "Failed to set write data [%s]\n", errorBuffer);
        return false;
    }
    return true;
}

static int writer(char *data, size_t size, size_t nmemb, string *writerData)
{
    unsigned long sizes = size * nmemb;
    if (writerData == NULL) return 0;
    writerData->append(data, sizes);
    return sizes;
}

 

posted on 2009-03-13 12:07 肥仔 閱讀(3543) 評(píng)論(-2)  編輯 收藏 引用 所屬分類: 網(wǎng)絡(luò)編程

評(píng)論

# re: libcurl應(yīng)用:如何把下載內(nèi)容寫入內(nèi)存  回復(fù)  更多評(píng)論   

I received my first <a href="http://bestfinance-blog.com/topics/mortgage-loans">mortgage loans</a> when I was 25 and it aided me very much. However, I require the credit loan also.
2010-11-26 20:54 | BurgessDEBORAH

# re: libcurl應(yīng)用:如何把下載內(nèi)容寫入內(nèi)存  回復(fù)  更多評(píng)論   

To order thesis statement supposes to be simple. Nevertheless, good students must remember that only a trustworthy dissertation writing service can provide good quality.
2011-06-23 06:27 | dissertation writing service

# re: libcurl應(yīng)用:如何把下載內(nèi)容寫入內(nèi)存  回復(fù)  更多評(píng)論   

Writing companies with many years of experience in producing of different sorts of resume papers will be good advisers for the people who need to order resume of the high quality.
2013-08-19 11:42 | over here
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲一区免费网站| 久久久久久噜噜噜久久久精品| 亚洲影院在线| 亚洲人成网站999久久久综合| 一本久道综合久久精品| 亚洲美女啪啪| 一区二区三区四区五区在线| 99国内精品| 亚洲一二三区视频在线观看| 9l国产精品久久久久麻豆| 亚洲毛片在线观看.| 99亚洲伊人久久精品影院红桃| 亚洲黑丝在线| 日韩一级在线| 欧美影院午夜播放| 牛人盗摄一区二区三区视频| 亚洲黄网站在线观看| 亚洲日本成人在线观看| 亚洲一级网站| 欧美在线视频二区| 欧美91大片| 国产精品扒开腿爽爽爽视频| 国产日韩精品一区二区三区在线| 亚洲国产精品综合| 好吊日精品视频| 最新亚洲电影| 亚洲网站在线| 欧美a级理论片| 亚洲深夜福利视频| 久久婷婷麻豆| 国产精品久久影院| 亚洲大胆av| 欧美中文在线观看| 91久久精品国产91久久| 午夜国产精品视频免费体验区| 久久精品国产久精国产一老狼| 欧美www视频在线观看| 国产精品一区二区三区久久| 亚洲肉体裸体xxxx137| 久久精品成人一区二区三区蜜臀 | 在线日本成人| 欧美电影在线观看| 一区二区日韩欧美| 蜜臀av一级做a爰片久久| 一本色道婷婷久久欧美| 午夜电影亚洲| 欧美日韩国产999| 精品91在线| 亚洲视频网在线直播| 久久午夜国产精品| 亚洲国产人成综合网站| 亚洲激情av| 国产一区视频网站| 亚洲精品久久久久| 国产精品国产三级国产aⅴ浪潮| 亚洲大黄网站| 亚洲国产精品久久久久婷婷884| 久久精品夜色噜噜亚洲aⅴ | 亚洲第一中文字幕| 亚洲欧洲精品一区| 久久精品夜色噜噜亚洲a∨| 欧美一二三视频| 国产一区二区精品久久91| 久久五月激情| 狠狠色丁香婷婷综合久久片| 亚洲黄色在线视频| 女女同性精品视频| 狠久久av成人天堂| 亚洲综合欧美日韩| 激情亚洲网站| 亚洲片在线观看| 国产欧美欧洲在线观看| 久久免费黄色| 女同性一区二区三区人了人一| 欧美在线视频观看免费网站| 狠狠狠色丁香婷婷综合激情| 亚洲伦理自拍| 免费久久99精品国产自在现线| 性欧美1819性猛交| 国产区精品在线观看| 欧美激情一区二区三区蜜桃视频| 欧美黄色小视频| 国产一区久久久| 久久久久久尹人网香蕉| 欧美激情综合在线| 久久久一本精品99久久精品66| 国产综合久久| 亚洲欧洲日产国码二区| 亚洲伦理精品| 亚洲激情在线| 久久亚洲私人国产精品va| 亚洲午夜在线| 国产精品资源在线观看| 亚洲久久一区二区| 亚洲激情影院| 国产精品一区二区久久久| 久久精品99国产精品| 老司机午夜精品| 日韩视频在线免费观看| 一区二区三区www| 国产毛片一区| 欧美激情成人在线| 国产精品美女在线| 99精品视频免费观看| 午夜精品理论片| 尤妮丝一区二区裸体视频| 亚洲每日更新| 国内精品**久久毛片app| 亚洲电影视频在线| 国产精品视频免费在线观看| 免费观看不卡av| 国产精品视频内| 亚洲欧洲午夜| 在线播放日韩| 午夜精品久久久久99热蜜桃导演| 国产视频综合在线| 亚洲美女黄色| 亚洲国产精品成人久久综合一区| 亚洲资源在线观看| 欧美成人嫩草网站| 久久精品国产一区二区电影| 欧美日韩国产综合视频在线观看中文 | 日韩午夜一区| 在线成人性视频| 亚洲欧美日韩国产一区| 在线视频你懂得一区二区三区| 欧美日韩精品免费 | 亚洲午夜免费福利视频| 狠狠色狠狠色综合系列| 一本色道久久88综合日韩精品| 亚洲永久免费| 一本色道久久综合亚洲精品按摩 | 国产精品青草久久久久福利99| 久久激情视频| 国产欧美韩日| 欧美亚洲日本网站| 欧美日韩精品一本二本三本| 欧美激情1区2区3区| 激情欧美日韩| 久久久久中文| 蜜臀av性久久久久蜜臀aⅴ四虎| 久久亚洲图片| 欧美一区二区三区男人的天堂| 亚洲福利国产| 久久国产高清| 久久国产福利| 欧美专区亚洲专区| 欧美在线一级va免费观看| 亚洲一区二区三区乱码aⅴ| 伊人久久亚洲美女图片| 国产视频一区三区| 亚洲国产精品国自产拍av秋霞 | 亚洲视频每日更新| 影音先锋亚洲精品| 亚洲国产mv| 欧美日韩免费区域视频在线观看| 欧美精品不卡| 久久国产精品电影| 欧美肥婆在线| 久久精品九九| 欧美国产视频在线观看| 亚洲免费观看在线观看| 亚洲电影免费| 国产一区二区三区久久精品| 亚洲一区二区精品在线| 午夜在线视频一区二区区别| 国产精品日韩在线| 欧美在线观看网站| 免费不卡在线视频| 亚洲精品1区2区| 欧美日韩国产综合一区二区| 亚洲私人影吧| 性欧美大战久久久久久久久| 国产一区亚洲一区| 免费视频一区| 看欧美日韩国产| 欧美一级理论片| 国产精品制服诱惑| 妖精成人www高清在线观看| 性欧美长视频| 国产一区二区毛片| 亚洲国产免费| 欧美色欧美亚洲高清在线视频| 亚洲精品欧美精品| 亚洲精品一区二区三区不| 欧美日韩另类字幕中文| 媚黑女一区二区| 最新高清无码专区| 国产精品激情偷乱一区二区∴| 先锋影音国产一区| 亚洲高清一区二| 久久国产精品免费一区| 亚洲美女少妇无套啪啪呻吟| 欧美日韩一视频区二区| 欧美一区国产在线| 国产精品99久久久久久有的能看| 欧美—级a级欧美特级ar全黄| 国产一区二区中文| 久久综合激情| 欧美女同在线视频|