Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Ivan Alekseev                        2:5020/1793.2  06 Jun 2003  19:07:17
 To : Anatolii Konuhov
 Subject : В чём тут дело?
 -------------------------------------------------------------------------------- 
 
 і Мир твоему дому Anatolii!
 АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДщщщщщщщъъъъ
 
 Однажды в студеную зимнюю пору,а именно <0-938 Янв 06>!
 а всю сеть и All истошно орал Anatolii Konuhov...
 атему: В чём тут дело?!
 
  AK>   Вот решил в первый раз написать прогу, которая
  AK>  сокеты бы юзала. Hу первый блин как всегда комом -
  AK>  столкнулся с проблемкой и не как решить не могу :(
  AK>   При вызове connect используеться константный
  AK>  указатель на структуру sockaddr_in, вот здесь вся
  AK>  веселуха и начинаеться. Компилятор пишет:
  AK>   cannot conver 'sockaddr_in*' to 'const sockaddr*'
  AK>   Вот мне и интересно с каких это пор указатель
  AK>  на класс потомок нельзя привести к указателю на
  AK>  основной класс?
 
 Во первчх это не классы, а структуры. (Почувствуйте разницу)
 struct in_addr {
         in_addr_t       s_addr;
 };
 
 struct sockaddr_in {
         uint8_t         sin_len;
         sa_family_t     sin_family;
         in_port_t       sin_port;
 
         struct in_addr  sdin_addr;
 
         char            sin_zero[8];
 };
 
 struct sockaddr {
         uint8_t         sa_len;
         sa_family_t     sa_family;
         char            sa_data[14];
 };
 
 Теперь посчитай размер и пойми как поступить. :-))
 
  AK>   Самое интересное, что пример из книги переписываю и...
  AK>  не работает.
 
 Ты в какую книгу смотрел? :-)))
 
  AK>   Сами понимаете меня волнуют два вопроса:
  AK>  1. Кто виноват (библиотеки, компилятор, мои кривые руки)?
  AK>  2. Что делать?
 
 Оба вопроса риторические. :-)
 
 P.S. Если до сих пор не понял то надо делать так.
 
 ПРИМЕР!!!!!
 
 struct sockaddr_in      serv;
 
 bind(sockfd, (struct sockaddr *) &serv, sizeof(serv));
   До новых встреч!                      Linux user #158236
 
 ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДщщщщщщщъъъъ
 і Ivan Alekseev (Polecat) ю Network's Polecats ю Linux Team
 АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДщщщщщщщъъъъ
 
 ... ет, не было и не будет здесь приколов...
 ---
  * Origin: -=Software is like sex; it's better when it's free=- (2:5020/1793.2)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 В чём тут дело?   Anatolii Konuhov   05 Jun 2003 21:56:06 
 Re: В чём тут дело?   Max Krasilnikov   08 Jun 2003 12:42:11 
 В чём тут дело?   Ivan Alekseev   06 Jun 2003 19:07:17 
Архивное /ru.linux/39423ee0e807.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional