Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[Unix] Траблы с recvfrom под FreeBSD 20.01.02 02:44
Автор: Dr. Nebula Статус: Незарегистрированный пользователь
|
При попытке откомпилить прогу выдается месага, что-то типа следующего:
passing `int *' as argument 6 of `recvfrom(int, void *, unsigned int, int, sockaddr *, socklen_t *)' changes signedness
В проге след код:
length = recvfrom(sd, buf, sizeof(buf), 0, &saddr, &sizeaddr);
переменные объявлены так:
int length;
int sd;
struct sockaddr saddr;
int sizeaddr;
unsigned char buf[1600];
Так как я с сокетами да и с С в Юнихах еще мало работал - может кто подскажет, в чем дело и как это лечить? :)
Заранее спасибо.
|
 |
[Unix] Траблы с recvfrom под FreeBSD 20.01.02 04:51
Автор: leo <Леонид Юрьев> Статус: Elderman
|
Все очень просто, тип socklen_t беззнаковый (unsigned), и поэтому компилятор выдал тебе предупреждение (signed* вместо unsigned*).
Исправь "int sizeadd" на "unsigned sizeadd", или лучше на "socklen_t sizeadd".
Удачи!
|
 |  |
[Unix] Траблы с recvfrom под FreeBSD 20.01.02 08:09
Автор: Dr. Nebula Статус: Незарегистрированный пользователь
|
> Все очень просто, тип socklen_t беззнаковый (unsigned), и > поэтому компилятор выдал тебе предупреждение (signed* > вместо unsigned*). > > Исправь "int sizeadd" на "unsigned sizeadd", или лучше на > "socklen_t sizeadd".
Тенькс! Домой приду - обязательно попробую
Еще раз тенкс за оперативность :)))
|
|
|