[英]Receiving unhandled NULL exception when using curl_easy_cleanup(curl)
[英]Why does curl_easy_cleanup() throw an exception?
我剛剛開始研究libcurl ,遇到了curl_easy_cleanup() function 的奇怪行為。 該程序的任務是原始的:從站點獲取 html 代碼並將其放入標准輸出。
#include <cstdio>
#include <clocale>
#include "curl\curl.h"
int main()
{
setlocale(LC_ALL, ".utf8"); // deleting this doesn't help
curl_global_init(CURL_GLOBAL_ALL);
CURL* curl = curl_easy_init();
CURLcode res;
if (curl)
{
curl_easy_setopt(curl, CURLOPT_URL, "https://cbr.ru/currency_base/daily/");
res = curl_easy_perform(curl);
if (res != CURLE_OK)
{
printf("Error\n");
}
}
curl_easy_cleanup(curl); // crash
curl_global_cleanup();
return 0;
}
一切順利,我有正確的 output,但curl_easy_cleanup拋出訪問沖突異常和程序崩潰。 為什么它會這樣做,我該如何解決這個問題? 謝謝。
UPD:我使用 Visual Studio 2019 並編譯為 C++。 我得出的結論是,這個問題是該站點使用 https(不是 http)。 我嘗試了幾個 http 站點,效果很好。 那么我應該如何對待 https 站點呢?
事實證明,問題出在安裝錯誤。 我已使用本指南(通過 vcpkg)重新安裝,現在一切正常!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.