powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / C++ [игнор отключен] [закрыт для гостей] / Тяпничная география
25 сообщений из 177, страница 3 из 8
Тяпничная география
    #38904611
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
whois и who.is и прочие им подобные выдают DNS записи по хостингам.
Но среди них я не нашёл гео-привязки.

Вообще мне кажется что централизованной детальной БД по geoip не существует.
Ну... или по крайней мере каждый повайдер ведёт свою собственную БД
сродни техучёта или кабельного хозяйства. И эта БД вряд-ли где-то шарится.

Поэтому координаты крупных городов это пожалуй наиболее достоверная
инфа. Дальше - приватная. И децентрализованная.

Насчёт США с их Prism и прочими системами - очень даже верю. Но... это
только под силу таким государствам.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904637
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу Country-IP диаграммы. Так я буду называть это.

Вобщем я подумал. И решил что делать это удобно через конвейер тулзов.
Это даёт больше свободы творчества и экспериментов. Я не буду кодить
конкретно реализацию рисовалки картинок. А сделаю нечто вроде набора
процессов поставщиков-потребителей.

Код: powershell
1.
GeoIP data => sorting => coloring => { linear | zigzag | gray | gilbert iteration} => panoramSplitter => bitmapRenderer



Причём часть из этих утилит возможно есть в линуксе точнее их аналоги такие
как sort, awk/gawk, sqlite, grep, imagemagic.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904803
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pantone Color Tables. Не знаю нахрена она нужна но выглядит красиво.
Пожалуй возьму себе.

http://www.novact.info/id40.html

Там 121 цвет. Надо еще придумать где найти недостающие.

Есть варианты.

1) Генерить случайно.
2) Брать две буквы названия страны (RU,US,CA) и каким-то образом получать RGB тройку.

И еще не забыть системные 8 цветов (самые насыщееные типа 'red','cyan','magenta') добавить в top 8 стран чтоб ярче и заметнее было.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904809
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще можно объединить с HTML color tables.

http://html-color-codes.info/color-names/
...
Рейтинг: 0 / 0
Тяпничная география
    #38904833
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значит вот что я придумал.

Итак 239 стран. Надо раздать им цвета.

Палитру белых-серых-черных я резервирую для системных нужд.

Поэтому цвета близкие к FFFFFF, C0C0C0, 000000 будут игнорироваться при маппинге.

Top 6 стран должны получить наиболее яркие цвета.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Code  Allocation Color
----- ---------- ------
US    1507673738 'red'
CN     267741269 'green'
JP     186372005 'blue'
GB     115678470 'magenta'
DE     111001300 'yellow'
KR      99794924 'cyan'



Поэтому вышеуказанные цвета будут удалены из оставшихся. Будут также удалены все "близкие" к ним цвета.
По формуле цветового расстояния RGB. С учётом весов.

Итак 239 - 6 = 233

Далее у нас есть две палитры. Pantone, HtmlColors. Грубо говоря 121 + 120 (Я удалил градации серых и белых).

Это 241 Цвет. Нужно еще что-то выкинуть.

Полагаю в двух палитрах будут цвета дубликаты. Или "близкие" цвета.

Буду удалять их до тех пор пока не останется 233.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904869
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЭто 241 Цвет. Нужно еще что-то выкинуть.

Полагаю в двух палитрах будут цвета дубликаты. Или "близкие" цвета.

Буду удалять их до тех пор пока не останется 233.
Возьми 8 последних стран и дай им такие же цвета как 8 предпоследним. Пусть самые маленькие парами выступают :)
...
Рейтинг: 0 / 0
Тяпничная география
    #38904941
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gilbertroute готов. Хехе....

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
$ gilbertroute level=2
0,0
0,1
1,1
1,0
2,0
3,0
3,1
2,1
2,2
3,2
3,3
2,3
1,3
1,2
0,2
0,3



Терь надо думать над основным алгоритмом.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904944
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дальше нужна какая-нить "деревянна" либа для работы с графикой. Желательно несжатой.
Т.к. возможно я будут многократно в течение сеанса открывать и закрывать сотни битмапов
в режиме update.

Кто-нить знает такую?
...
Рейтинг: 0 / 0
Тяпничная география
    #38904959
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Немного цЫфирей. Что сосбно упадёт в OUTPUT ?

На выходе я ожидаю виртуальную картинку размера 64k x 64k.

Или 64 * 1024 на 64 * 1024.

Или панораму. Множество картинок.

Код: plaintext
1.
2.
3.
GeoIPCountry-00-00.bmp
......
GeoIPCountry-63-63.bmp


Размером 1024 на 1024.

При палитровом режиме bmp там вобщем-то будет (прибл) 1 пиксел равен 1 байту.

Или грубо говоря каждая картинка по 1 Мб.

Итого всё хранилище 64 * 64 = 4096 Mб = 4Гб. Что вобщем-то подтверждает расчёт.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904961
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но квадратные картинки некрасиво смотреть на мониках 16 на 9.

И я решил заложить в спецификацию "выхода" следующие наборы разрешений.

Для олд-скульных размеров моников и некоторых планшетов и телефонов.

Код: plaintext
1.
2.
3.
4.
5.
6.
XVGA       ;320x240
VGA-16     ;640x480
NTSC       ;720x480 
PAL        ;720x576 
SVGA-600   ;800x600
SVGA-768   ;1024x768



Для HD. Для красоты я дал им реальные имена соответвтующие реальным размерам панелей.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
HD-Ready   ;1280x720
BenQ BL702A;1280x1024
HP-ProBook ;1366x768 
Asus VE198S;1440x900 
           ;1600x900 
           ;1680x1050
Full-HD    ;1920x1080
           ;1920x1200
LC-34UM65-P;2560x1080
           ;2560x1440
Dell UltraSharp U3014   ;2560x1600
Samsung Curved S34E790CN;3440x1440
                        ;3840x2160
LG 31MU97-B             ;4096x2160



Модель с разрешением 1366 на 768 является самой популярной (со ссылкой на http://www.w3schools.com/browsers/browsers_display.asp).

Думаю что это связано с тотальным засильем ноутов типа моего HP-ProBook. Буду ориентироваться на этот размерчик
как на самый основной.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904964
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для панжорамы популярного дисплея.

По горизонтали будет

65536 / 1366 = 48 (с округлением в большую сторону).

По вертикали.

65536 / 768 = 86.

Тоесть панорама 00..47 и 00..85.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904988
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Более менее причёсанный вариант одной утилиты.

gilbertroute.c
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
#include <io.h>

#ifdef _WIN32
#include "windows.h"
#endif

/* 14.03.2015 (Mayton) - In beginning... */


const int u=1;  // pixel step
 
void a(int i) ;
void b(int i) ;
void c(int i) ;
void d(int i) ;

int glx;
int gly;

// BGI emulation
void linerel(int x,int y)
{
	glx+=x;
	gly+=y;
	printf("%d,%d\n",glx,gly);
}

void moveto(int x,int y)
{
	glx=x;
	gly=y;
	printf("%d,%d\n",glx,gly);
}

 
// Elements of curve
void a(int i)
{
	if (i > 0)
	{
		d(i-1);
		linerel(+u,0);
		a(i-1);
		linerel(0, u);
		a(i - 1);
		linerel(-u, 0);
		c(i - 1);
	}
}
 
void b(int i)
{
	if (i > 0)
	{
		c(i - 1);
		 linerel(-u, 0);
		 b(i - 1);
		 linerel(0, -u);
		 b(i - 1);
		 linerel(u, 0);
		d(i - 1);
	}
}
 
void c(int i)
{
	if (i > 0)
	{
		b(i - 1);
		linerel(0, -u);
		c(i - 1);
		linerel(-u, 0);
		c(i - 1);
		linerel(0, u);
		a(i - 1);
	}
}

void d(int i)
{
	if (i > 0)
	{
		a(i - 1);
		linerel(0, u);
		d(i - 1);
		linerel(u, 0);
		d(i - 1);
		linerel(0, -u);
		b(i - 1);
	}
}
 
 
// Nearest to power of 2
unsigned int flp2(unsigned int x){
	x = x | (x>>1);
	x = x | (x>>2);
	x = x | (x>>4);
	x = x | (x>>8);
	x = x | (x>>16);
	return x - (x >> 1);
}



int main(int argc,char **arg, char **env){

	if (argc==1) {
		fprintf(stderr,"\nGilbert Route 1.0 (c) Mayton and SQL.RU. Written in 'C' :)\n");
		fprintf(stderr,"\nUsage: gilbertroute level=N\n");
		fprintf(stderr,"\nWhere:\n");

		//fprintf(stderr,"\n       size  = { 32 | 64 | 128 | 256 ... etc powers of two} ");
		fprintf(stderr,"\n       level = 1,2,3...");
		fprintf(stderr,"\n");
		return -1;
	} else {
		int level=-1;
		int size=-1;
		int argLength = strlen(arg[1]);
		/*if (0==strncmp(arg[i],"size=",5)){
			level = atoi(arg[1]);	
			if (level<0){
				fprintf(stderr,"\nGilbertroute: Error! Argument cannot be negative.\n");
				return -3;
			}
		} else */
		if (0==strncmp(arg[1],"level=",6)){
			level = atoi(arg[1]+6);	
			if (level<0){
				fprintf(stderr,"\nGilbertroute: Error! Argument cannot be negative.\n");
				return -3;
			}
			//level = flp2(size);
			//fprintf(stderr,"\nGilbertroute: Warning! The nearest power of 2 for size=%d is %d\n",size,level);
		}
		if (level>=0){
			moveto(0, 0);
			a(level);			
			return 0;
		} else {
			fprintf(stderr,"\nGilbertroute: Error! Unrecognized argument.\n");
			return -2;
		}
		
	}

}
...
Рейтинг: 0 / 0
Тяпничная география
    #38904991
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Писать CSV-парсер на "C" - это полная печалька. strtok.... мать его так.

Думаю что не буду этого делать. Поищу другой инструмент.
Я не спец в Питонах и Go и Rust. Но думаю что смогу накрапать нечто.
Всё-тки ближе к сути. Я имею в виду к общепринятому подходу
к разработке утилит.

А запускать консольные инструменты в java - неудобно. Либо
очень долго конфигурить environment либо писать алиасы и баш-скрипты.
Всё это сужает аудиторию пользователей.

Цена вопроса - оперативно конвертить IP => int32.

Вобщем чтоб не было офтопика подниму форк в Программировании
там прокашлять все вопросы и вернуться обратно с экзешником.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904993
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonквадратные картинкиА почему именно квадратные?
Например, если брать в качестве координат части ip-адреса (по 8-16 бит в каждую), то получится прямоугольник с соотношением сторон 0,875.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904994
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПисать CSV-парсер на "C" - это полная печалька. strtok.... мать его так.(f)scanf не справляется?maytonЦена вопроса - оперативно конвертить IP => int32.В WinApi есть такой вызов.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904997
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftmaytonквадратные картинкиА почему именно квадратные?
Например, если брать в качестве координат части ip-адреса (по 8-16 бит в каждую), то получится прямоугольник с соотношением сторон 0,875.
Ну... там ниже по тексту я решил что квадратные это удобно для кодинга. Но не юзабельно
для пользователя.

Преимущества квадратов есть только для заполняющих областей Гилберта.
Но об этом - чуть позже.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904999
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftmaytonПисать CSV-парсер на "C" - это полная печалька. strtok.... мать его так.(f)scanf не справляется?maytonЦена вопроса - оперативно конвертить IP => int32.В WinApi есть такой вызов.
На WinAPI стараюсь не завязываться. Далее... некоторые штуки с PIPE-s не могут быть изящно реализованы
в Windows.
...
Рейтинг: 0 / 0
Тяпничная география
    #38905077
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЦена вопроса - оперативно конвертить IP => int32
IP у тебя уже в БД, если не путаю, добавь поле intIP, конвертни один раз (без разницы чем и как) и используй его.
...
Рейтинг: 0 / 0
Тяпничная география
    #38905110
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БД вобщем-то была нужна чтобы обеспечить сортированный порядок beginIp-endIp.
Иначе основной алгоритм не сработает.

Хотя.. это мысль. Нужно 1 раз отсортировать и просто работать с csv файлом.
А функцию ip2num(..) я просто портирую в "C".
...
Рейтинг: 0 / 0
Тяпничная география
    #38905113
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати из БД ничего неизвестно о перекрытии диапазонов. Возможно такие есть.

Это надо проверить.
...
Рейтинг: 0 / 0
Тяпничная география
    #38905115
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор(f)scanf не справляется?
Думаю... справится. Изначально я предполагал что fscanf будет узким местом.
Но из того что на 1 запись сsv приходится более чем сотня операций рисования
цветного пиксела - то он не может быть узким местом.
...
Рейтинг: 0 / 0
Тяпничная география
    #38905144
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonА функцию ip2num(..) я просто портирую в "C".
Все придумано до нас.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#include <winsock2.h>
#pragma comment(lib, "Ws2_32.lib")
#include <stdio.h>

void  main(){
	unsigned int ip = htonl(inet_addr("123.45.67.89"));
	printf("%X\n", ip);
}


В линуксе также, только хэдеры другие надо.
...
Рейтинг: 0 / 0
Тяпничная география
    #38905174
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T, спс.
...
Рейтинг: 0 / 0
Тяпничная география
    #38905176
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Осилил Z-кривую.

Z-Рекурсия взлетела с 1 раза. В отличие от Гилберта который был частично украден.

Единственный нюанс - автоматическое округление до степени двойки. Позаимствовано
у старика Уоррена из книжки.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>         
#include <io.h>

#ifdef _WIN32
#include "windows.h"
#endif

/* 15.03.2015 (Mayton) - In beginning... */

// Nearest to power of 2 less than
unsigned int flp2(unsigned int x){
	x = x | (x>>1);
	x = x | (x>>2);
	x = x | (x>>4);
	x = x | (x>>8);
	x = x | (x>>16);
	return x - (x >> 1);
}

// Nearest to power of 2 greather than
unsigned int clp2(unsigned int x){
	x = x - 1;
	x = x | (x>>1);
	x = x | (x>>2);
	x = x | (x>>4);
	x = x | (x>>8);
	x = x | (x>>16);
	return x + 1;
}


void routeSquare(int x,int y,int size){
	if (size>=2){
		size/=2;
		routeSquare(x,y,size);
		routeSquare(x+size,y,size);
		routeSquare(x,y+size,size);
		routeSquare(x+size,y+size,size);
	} else {
		printf("%d,%d\n",x,y);
	}
}

int main(int argc,char **arg, char **env){

	if (argc==1) {
		fprintf(stderr,"\nZ-Route 1.0 (c) Mayton and SQL.RU. Written in 'C' :)\n");
		fprintf(stderr,"\nUsage: z-route size=N\n");
		fprintf(stderr,"\nWhere:\n");
		fprintf(stderr,"\n       size = 1,2,4,8 ... (size is automatically upper to power of 2)");
		fprintf(stderr,"\n");
		return -1;
	} else {
		int level=-1;
		int size=-1;
		int argLength = strlen(arg[1]);
		if (0==strncmp(arg[1],"size=",5)){
			size = atoi(arg[1]+5);	
			if (size<=0){
				fprintf(stderr,"\nZ-Route: Error! Argument cannot be zero or negative.\n");
				return -3;
			}
		}
		if (size>0){
			routeSquare(0,0,clp2(size));
			return 0;
		} else {
			fprintf(stderr,"\nZ-Route: Error! Unrecognized argument.\n");
			return -2;
		}
		
	}

}
...
Рейтинг: 0 / 0
Тяпничная география
    #38905350
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приступил собсно к парсеру СSV.

Хм... небольшая заминка. Как-бы эти запятые поскипать. Кто знаток fscanf ?

ipv4filter.c

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
#include <stdint.h>
#include <io.h>

//#include <arpa/inet.h>
// fatal error: arpa/inet.h: No such file or directory

//#include <byteswap.h>
// fatal error: byteswap.h: No such file or directory


#ifdef _WIN32
#include "windows.h"
#endif



/*
startIpNum,endIpNum,   country,region,city,postalCode,latitude,longitude,dmaCode,areaCode
1.0.0.0,   1.7.255.255,"AU",   "",    "",  "",        -27.0000,133.0000,        ,
1.9.0.0,   1.9.255.255,"MY",   "",    "",  "",        2.5000,  112.5000,        ,
*/

/*   
unsigned int ip2num(const char *IP)
{
	return htonl(inet_addr(IP));
}

d:\tmp\ccGIwmlS.o:ipv4filter.c:(.text+0xd): undefined reference to `inet_addr@4'
d:\tmp\ccGIwmlS.o:ipv4filter.c:(.text+0x18): undefined reference to `htonl@4'
c:/mingw-4.10.0/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: d:\tmp\ccGIwmlS.o: bad reloc address 0x20 in section `.eh_frame'
c:/mingw-4.10.0/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: final link failed: Invalid operation
collect2.exe: error: ld returned 1 exit status
*/                                          


int main(int argc,char **arg, char **env){

	int cnt = 0;
	int i;
	char   startIpNum[256];
	char   endIpNum[256];
	char   country[256];
	char   region[256];
	char   city[256];
	char   postalCode[256];
	char   latitude[20];
	char   longitude[20];
	char   dmaCode[256];
	char   areaCode[256];

	char   comma[256];
	
	while(TRUE){
		startIpNum[0] = '\0';
		endIpNum[0]   = '\0';
		country[0]    = '\0';
		region[0]     = '\0';
		int res = fscanf(
			stdin,
			// http://stackoverflow.com/questions/18737117/reading-values-from-csv-file-into-variables
			// 
			"%s,%[^,]%s,%[^,]%s,%[^,]%s",
			&startIpNum,
			&comma,
			&endIpNum,
			&comma,
			&country,
			&comma,
			&region
			/*
			&city,
			&postalCode,
			&latitude,
			&longitude,
			&dmaCode,
			&areaCode*/
		);
		printf("----- row %d -------\n",cnt);
		printf("res = %d\n",res);
		printf("startip = '%s'\n",startIpNum);
		printf("endip   = '%s'\n",endIpNum);
		printf("country = '%s'\n",country);
		printf("region  = '%s'\n",region);
		cnt++;
		if (res==0) break;
	}
	printf("\a");             
}



Output:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
----- row 0 -------
res = 1
startip = 'startIpNum,endIpNum,country,region,city,postalCode,latitude,longitude,dmaCode,areaCode'
endip   = ''
country = ''
region  = ''
----- row 1 -------
res = 1
startip = '1.0.0.0,1.7.255.255,"AU","","","",-27.0000,133.0000,,'
endip   = ''
country = ''
region  = ''
----- row 2 -------
res = 1
startip = '1.9.0.0,1.9.255.255,"MY","","","",2.5000,112.5000,,'
endip   = ''
country = ''
region  = ''
----- row 3 -------
res = 1
startip = '1.10.10.0,1.10.10.255,"AU","","","",-27.0000,133.0000,,'
endip   = ''
country = ''
region  = ''



Код: plaintext
1.
2.
3.
4.
5.
$ сс --version
cc.exe (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.



Илья. Сова. Dima. Помогайте.
...
Рейтинг: 0 / 0
25 сообщений из 177, страница 3 из 8
Форумы / C++ [игнор отключен] [закрыт для гостей] / Тяпничная география
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]