我正在尝试将从网站返回的数据捕获到一个字符数组中(而不是让 libcurl 将其写入标准输出),以便我可以处理它。我得到一个非法的赖特例外。
“ trailing_stop_loss.exe 中 0x775E8E19 (ntdll.dll) 处的未处理异常:0xC0000005:访问冲突写入位置 0x00EBDC90。”
我正在使用 MS Visual Studio Express 2012。
欢迎任何帮助。谢谢,
这是代码:
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <string>
#include "curl.h"
using namespace std;
int main(void) {
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
char *webData[1000];
int i;
for (i=0; i<1000; i++) {webData[i] = "z";}
curl_easy_setopt(curl, CURLOPT_URL, "http://finance.yahoo.com /d/quotes.csv?s=GOOG&f=sd1p");
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, NULL);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)webData);
res = curl_easy_perform(curl);
if(res != CURLE_OK)`enter code here`
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
else {`enter code here`
cout << webData;
}
/* always cleanup */
curl_easy_cleanup(curl);
}
}