Ошибка: присвоение char* из несовместимого типа void*C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Ошибка: присвоение char* из несовместимого типа void*

Сообщение Anonymous »

Поэтому я пытаюсь сохранить ответ на HTTP-запрос libcURL в C-строку для последующего анализа. Код ответа полностью написан на C, а все остальное — на C++, и с любым другим компилятором C++ он должен работать нормально. Но когда я пытаюсь скомпилировать, даже если я передаю аргументы «-x c», за которыми следует имя файла, я получаю следующие конкретные ответы.

Код: Выделить всё

g++ main.cpp -x c cJSON.c -x c respbuffer.c -lcurl -lm

./respbuffer.c:14:9: error: assigning to 'char *' from incompatible type 'void *'
s->ptr = malloc(s->len+1);
^ ~~~~~~~~~~~~~~~~
./respbuffer.c:23:9: error: assigning to 'char *' from incompatible type 'void *'
s->ptr = realloc(s->ptr, new_len+1);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
Как ни странно, эта ошибка появляется только при компиляции с помощью g++. Если я использую gcc, он работает нормально и работает достаточно гладко. Для любопытных: я все написал в Xcode и компилирую с помощью GCC 4.2.1.

Подробнее: https://stackoverflow.com/questions/321 ... -type-void
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»