gpt4 book ai didi

cURL 在 Release模式下崩溃,而不是在调试中

转载 作者:太空宇宙 更新时间:2023-11-04 00:04:12 34 4
gpt4 key购买 nike

我在我的应用程序中使用了 cURL。它在 Debug模式下工作正常(没有错误)。但是,如果我将代码切换到发布版本,应用程序开始崩溃。我正在使用 VC 2013

我的代码:

data_downloads.curl = curl_easy_init();

data_downloads.curlData = (CURL_DOWNLOADED_DATA *)malloc(sizeof(CURL_DOWNLOADED_DATA));
data_downloads.curlData->data = (char *)malloc(sizeof(char));
data_downloads.curlData->data[0] = '\0';

curl_easy_setopt(data_downloads.curl, CURLOPT_WRITEFUNCTION, &my_curl_writeCallback);
curl_easy_setopt(data_downloads.curl, CURLOPT_WRITEDATA, data_downloads->curlData);
curl_easy_setopt(data_downloads.curl, CURLOPT_VERBOSE, 1L); //tell curl to output its progress

curl_easy_setopt(data_downloads.curl, CURLOPT_URL, USER_INFO_URL);
curl_easy_setopt(data_downloads.curl, CURLOPT_COOKIEFILE, "cookie.txt");


curl_easy_perform(data_downloads.curl); //-- it crashes here

最佳答案

我注意到在 Debug模式下,VC 会在每个函数的堆栈中添加一些空间。如果一个函数短暂地超出范围并覆盖堆栈的几个字节,那么这将不会被注意到......直到您编译发布。

您应该进一步检查 Release模式的所有库是否正确。 VC 知道许多模型的许多库类型(对于 DLL、多线程/非……)。对照您的 Debug模式的库检查它们。

这些是我遇到的问题。可能还有其他问题。

关于cURL 在 Release模式下崩溃,而不是在调试中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30671976/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com