Переопределение типа "struct" - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Столкнулся с такой проблемой. Пытаюсь скомпилить пример из гайда по libcurl (http://curl.haxx.se/libcurl/c/multithread.html).
#define CURL_STATICLIB 
 
#include <stdio.h>
 
#pragma comment(lib,"pthreadVC2.lib")
#include <pthread.h>
 
#pragma comment(lib,"libcurl_a.lib")
#include <curl.h>
 
#define NUMT 3
 
const char * const urls[NUMT] = {
    "http://curl.haxx.se/",
    "ftp://cool.haxx.se/",
    "http://www.contactor.se/"
};
 
static void *pull_one_url(void *url)
{
    CURL *curl;
 
    curl = curl_easy_init();
    curl_easy_setopt(curl, CURLOPT_URL, url);
    curl_easy_perform(curl); /* ignores error */
    curl_easy_cleanup(curl);
    return NULL;
}
 
int main()
{
    pthread_t tid[NUMT];
    int i;
    int error;
 
    /* Must initialize libcurl before any threads are started */
    curl_global_init(CURL_GLOBAL_ALL);
 
    for (i = 0; i < NUMT; i++) {
        error = pthread_create(&tid[i],
            NULL, /* default attributes please */
            pull_one_url,
            (void *)urls[i]);
        if (0 != error)
            fprintf(stderr, "Couldn't run thread number %d, errno %d\n", i, error);
        else
            fprintf(stderr, "Thread %d, gets %s\n", i, urls[i]);
    }
 
    /* now wait for all threads to terminate */
    for (i = 0; i < NUMT; i++) {
        error = pthread_join(tid[i], NULL);
        fprintf(stderr, "Thread %d terminated\n", i);
    }
 
    return 0;
}
Выдает ошибку:
переопределение типа "struct"	Test	d:\program files\microsoft visual studio 14.0\vc\include\pthread.h 320
Как исправить данную ошибку? Заранее благодарю за любой ответ.

Решение задачи: «Переопределение типа "struct"»

textual
Листинг программы
struct timespec {
        time_t tv_sec;
        long tv_nsec;
};

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.071 из 5