Desidero memorizzare il risultato di questa funzione di arricciatura in una variabile, come posso fare?C libcurl ottiene l'output in una stringa
#include <stdio.h>
#include <curl/curl.h>
int main(void)
{
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
res = curl_easy_perform(curl);
/* always cleanup */
curl_easy_cleanup(curl);
}
return 0;
}
grazie, ho risolto in questo modo:
#include <stdio.h>
#include <stdlib.h>
#include <curl/curl.h>
function_pt(void *ptr, size_t size, size_t nmemb, void *stream){
printf("%d", atoi(ptr));
}
int main(void)
{
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, function_pt);
curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
system("pause");
return 0;
}
solo far notare nella vostra soluzione in function_pt() si sta convertendo la stringa nel PTR per intero al fine di riconvertirlo in stringa nell'output. È possibile emettere direttamente la stringa (e vedere la risposta completa). – zzz
questo è un collegamento all'esempio cURL http://curl.haxx.se/libcurl/c/getinmemory.html – lafferc
'Ris. Codice CURL 'non è utilizzato – fnc12