Неявное объявление функции ether_ntoa недопустимо в C99

Это часть серии функций, которые извлекают IP и Mac адреса из телефона.

strcpy(temp, (char *)ether_ntoa((const struct ether_addr *)LLADDR(sdl)));

РЕДАКТИРОВАТЬ: эквивалентной функции не требуется, только несколько пропущенных заголовков.

РЕДАКТИРОВАТЬ: Добавлено приведение к LLADDR(SDL)

2 ответа

Решение

Насколько я понимаю, сообщение об ошибке не утверждает, что функция отсутствует, только то, что вы не включили ее объявление. (Я не знаю, существует ли он, только что сообщение содержит другую жалобу.)

Если это поможет, man ether_ntoa говорит мне:

#include <sys/types.h>
#include <sys/socket.h>
#include <net/ethernet.h>

Я включил следующий заголовочный файл и исходный код успешно скомпилирован:

#import <arpa/inet.h>
Другие вопросы по тегам