В программе есть строки:
#include <string.h>
...
char* where;
char* array;
char* needle;
size_t left, needlelength;
...
where = memmem( array, left, needle, needlelength);
На последнюю строку GCC выдаёт предупреждение:
warning: assignment makes pointer from integer without a cast
Если перед memmap добавить (char*) или (void*), компилируется без предупреждений.
Почему так происходит? Во всех мануалах написано, что memmem возвращает указатели. В заголовочных файлах она есть только в string.h:
extern void *memmem (__const void *__haystack, size_t __haystacklen, __const void *__needle, size_t __needlelen)
Система Ubuntu, gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5, версия libc 2.12.1.
Заранее спасибо.
Ответ на:
комментарий
от arsi
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от question4
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от question4
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от Murr
Ответ на:
комментарий
от arsi
Ответ на:
комментарий
от question4
Ответ на:
комментарий
от question4
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от arsi
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от staseg
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от Murr
Ответ на:
комментарий
от arsi
Ответ на:
комментарий
от AIv
Ответ на:
комментарий
от Murr
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Программа из K&R вопросы по warnings, полученные от gcc (2015)
- Форум unicode, сортировка и буква ё (2008)
- Форум Писал Я тут про Faad2. теперь про MPEG4ip (2004)
- Форум хочу узнать текущй год, а gcc не дает (2007)
- Форум Ядро сломалось (2008)
- Форум mreamap() режет указатель до 32-битного (2015)
- Форум [оффтопик][с++] memmem (2009)
- Форум Мне нужна помощь, 2 недели пытаюсь собрать дрова для Alfa AWUS036NH (2019)
- Форум использование using и возвращаемые типы (2018)
- Форум Не получается собрать драйвер Ralink (2015)