Автор
|
Тема: Конвертирование IP("127.0.0.1") в DWORD?
|
Sourcer |
опубликован 11-10-2001 12:57 MSK
Я помню есть такая функция для конвертирования IP из DWORD в строковый IP... Подскажите такую же только на оборот! И заодно напомнити как называется фун. из DWORD в IP Надо чтоб эта функция была как в Linux так и в Windows.... Ну можно только в Linux
|
Flex Ferrum
|
опубликован 11-10-2001 13:22 MSK
GetHostByName спасет отца русской демократии. |
Sourcer
|
опубликован 11-10-2001 13:25 MSK
Я инеи введу просто сконвертить строку например "255.255.255.255" в DWORD 0xFFFFFFFF |
Sourcer
|
опубликован 11-10-2001 14:36 MSK
Написал....int FindSymb(int num, char* str, char symb) //найти num входящий сивол { int counter=0; if(num<=0) return -1; for(int i=0;i<=strlen(str)-1;i++) { if(str[i]==symb) counter++; if(counter==num) return i+1; } return -1; } long IPConverter(char* IP) //конвертирование IP из строки в DWORD { long result=0; int res = atoi(IP); result = result | res; for(int i=1;i<=3;i++) { res = atoi((char*)(int)IP+FindSymb(i,IP,'.')); result = result << 8 | res; } return result; } Чтонибудь по быстрее на C++ можите предложить? |
Flex Ferrum
|
опубликован 11-10-2001 14:41 MSK
А нахрена? gethostbyname даст тебе больше свободы. В этом случае ты не привязываешься непосредственно к IP адресам - можешь доменные имена юзать. |
Sourcer
|
опубликован 11-10-2001 14:53 MSK
БЛИН! Да у меня вообще прога локальна!!!! |
Flex Ferrum
|
опубликован 11-10-2001 16:17 MSK
Не имеет значения. Сегодня локальная - завтра глобальная. |
Sourcer
|
опубликован 11-10-2001 17:03 MSK
БЛИН! НУ СЧИТАЙ ЧТО ЭТА ПРОГРАММА ГЛОБАЛЬНО-ЛОКАЛЬНАЯ потомучто она будет стоять на сервере, но к инете не будет иметь значение!!! |
Sourcer
|
опубликован 11-10-2001 17:14 MSK
Ещё рас обьясняю для непонятлевых!!!!!!!! Есть строка! Допустим "255.255.255.255" её надо преобразовать в DWORD чтоб это стало равным 0xFFFFFFFF! Естьли функция которая такое преаброзовывает????????Или же кто может предложить чтонибудь производительнее на C++!!!!! чем выше указанный исходник! |
server_mouse
|
опубликован 11-10-2001 17:43 MSK
The Windows Sockets inet_addr function converts a string containing an (Ipv4) Internet Protocol dotted address into a proper address for the IN_ADDR structure.unsigned long inet_addr ( const char FAR *cp );
|
andrewag
|
опубликован 11-10-2001 17:49 MSK
Народ, че вы гоните? DWORD dwFull = MAKELONG(MAKEWORD(b1, b2), MAKEWORD(b3, b4)); Или это не то? |
Sourcer
|
опубликован 11-10-2001 17:54 MSK
Ну это организованно у меня в исходнике.... только в другом виде.... |
Sourcer
|
опубликован 11-10-2001 17:59 MSK
server_mouse, СПАСИБО!!!!! |