赞
踩
在编译完libcurl的dll和lib后,使用如下
// http.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <stdio.h> #include <curl/curl.h> #pragma comment(lib,"libcurl.lib") int _tmain(int argc, _TCHAR* argv[]) { CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "http://www.baidu.com"); /* example.com is redirected, so we tell libcurl to follow redirection */ curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); /* Perform the request, res will get the return code */ res = curl_easy_perform(curl);//此处崩溃 /* Check for errors */ if(res != CURLE_OK) fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); /* always cleanup */ curl_easy_cleanup(curl); } getchar(); return 0; }
当编译的lib和使用的程序的 (属性-配置属性-c/c++-运行库 的设置如:多线程调试 (/MTd))选项不一致时,就会出现如下错误 :
1 调用程序编译出错:>LIBCMTD.lib(dbgheap.obj) : error LNK2005: __CrtSetCheckCount 已经在 MSVCRTD.lib(MSVCR100D.dll) 中定义
2 调用程序调用curl_easy_perform ()程序异常退出
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。