-
+55
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
bool validateIp(std::string& ip) {
if( ip.length() == 0 ) {
return false;
}
if( ip[0] == '.' ) {
return false;
}
// Проверка на наличие 3 точек
int cp = 0;
for( int i = 0; i < ip.length(); i++ ) {
if( ip[i] == '.' ) {
cp++;
}
}
if( cp != 3 ) {
std::cout << "проверка на 3 точки" << std::endl;
return false;
}
//=====================
// Проверка на 2 точки подряд
for( int i = 0; i < ip.length()-1; i++ ) {
if( ip[i] == '.' && ip[i+1] == '.' ) {
std::cout << "проверка на 2 точки подряд" << std::endl;
return false;
}
}
//===========================
//Проверка на больше 3 цифр подряд
int i = 0;
int j = 0;
for( i = 0; i < ip.length(); i++ ) {
for( j = i; j < i+4 && j < ip.length(); j++ ) {
if( j == i+3 && ip[j] != '.' ) {
std::cout << "проверка на 4 цифры подряд" << std::endl;
return false;
}
if( ip[j] == '.' ) {
i = j;
break;
}
}
}
return true;
//============================
}
Валидация IP-адреса
lukaville,
17 Февраля 2015
-
+51
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
while (w.pollEvent(event)) {
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Period)) {
ip += ".";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num0)) {
ip += "0";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num1)) {
ip += "1";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num2)) {
ip += "2";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num3)) {
ip += "3";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num4)) {
ip += "4";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num5)) {
ip += "5";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num6)) {
ip += "6";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num7)) {
ip += "7";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num8)) {
ip += "8";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Num9)) {
ip += "9";
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::BackSpace) && ip.length() > 0) {
ip.erase(ip.end() - 1, ip.end());
}
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Return)) {
if (validateIp(ip)) {
Text c("Connection...", f);
c.setColor(Color::Black);
c.setPosition(100, 20);
w.draw(c);
w.display();
return ip;
} else {
ip.erase(ip.begin(), ip.end());
wrongAnswer = true;
}
}
if (event.type == Event::Closed) {
w.close();
return 0;
}
}
Ввод IP-адреса в интерфейсе игры
lukaville,
17 Февраля 2015
-
+49
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
#include <iostream>
int get_number() {
return 5;
}
int magic_number(int foo()) {
return foo();
}
int main(void)
{
std::cout << magic_number(get_number) << std::endl;
}
http://ideone.com/TbV0jD
LispGovno,
17 Февраля 2015
-
+141
- 1
- 2
- 3
- 4
- 5
- 6
- 7
/* The DNS spec is officially case-insensitive, but for those times when you
*really* wanna see any and all discrepancies, by all means define this. */
#ifdef ANAL
if (strcmp (poop->name, hp->h_name) != 0) { /* case-sensitive */
#else
if (strcasecmp (poop->name, hp->h_name) != 0) { /* normal */
#endif
Из первой версии netcat'а.
bormand,
17 Февраля 2015
-
+51
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
//Sets the color(background and foreground)
void Console::SetColor(){
#ifdef _WIN32
SetConsoleTextAttribute(hConsole, FGColor | BGColor);
#else
string clr = "\033[";
clr += BGColor;
clr += ";";
clr += FGColor;
clr += "m";
cout << clr;
#endif
}
Изменение цвета текста и фона консоли
govnokod3r,
17 Февраля 2015
-
+160
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
if ($sub_sub_sub_sub_category_id !== null) {
if ($this->core->countUrl > 5) {
header('Location: /404/');
}
foreach ($categories[$category_id][$sub_category_id][$sub_sub_category_id][$sub_sub_sub_category_id][$sub_sub_sub_sub_category_id] as $k1 => $v1) {
if ($k1 !== 0) {
foreach ($v1 as $k2 => $v2) {
if ($k2 !== 0) {
if ($this->core->translit($v2[0]) == $sub_sub_sub_category) {
$sub_sub_sub_sub_sub_category_id = $k1;
$sub_sub_sub_sub_sub_sub_category_id = $k2;
break;
}
}
}
}
}
$this->core->title($categories[$category_id][$sub_category_id][$sub_sub_category_id][$sub_sub_sub_category_id][$sub_sub_sub_sub_category_id][$sub_sub_sub_sub_sub_category_id][$sub_sub_sub_sub_sub_sub_category_id][0]);
$bread_crumbs[] = array(
'text' => $categories[$category_id][$sub_category_id][$sub_sub_category_id][$sub_sub_sub_category_id][$sub_sub_sub_sub_category_id][$sub_sub_sub_sub_sub_category_id][$sub_sub_sub_sub_sub_sub_category_id][0],
'url' => $location['alias'] . '/' . $this->core->translit($categories[$category_id][0]) . '/' . $this->core->translit($categories[$category_id][$sub_category_id][$sub_sub_category_id][0]) . '/' . $this->core->translit($categories[$category_id][$sub_category_id][$sub_sub_category_id][$sub_sub_sub_category_id][$sub_sub_sub_sub_category_id][0]) . '/' . $this->core->translit($categories[$category_id][$sub_category_id][$sub_sub_category_id][$sub_sub_sub_category_id][$sub_sub_sub_sub_category_id][$sub_sub_sub_sub_sub_category_id][$sub_sub_sub_sub_sub_sub_category_id][0])
);
$query_add = "
AND (`market_item`.`category_key` = '" . $category_id . "')
AND `market_item`.`param` REGEXP '(\"" . $sub_sub_sub_sub_category_id . "\")'
";
$vip_query_add = "
AND `market_item`.`category_key` = '" . $category_id . "'
";
}
qualitycode,
16 Февраля 2015
-
+127
- 1
- 2
wct
http://habrahabr.ru/post/250713/
Vasiliy,
16 Февраля 2015
-
+127
- 1
http://i.gyazo.com/dd1b407b6ea528e59de2966e49d4cb82.png
Юзабилити)))
motobuster,
16 Февраля 2015
-
+164
- 1
- 2
- 3
- 4
- 5
- 6
- 7
window.onload = function (){
var divs=document.getElementsByTagName("DIV");
for( var i=0; i<divs.length; i++)
if(divs[i].className=="pro")
divs[i].style.minHeight=0+"px"
;
}
Целостность кода сохранена.
korovnikissi,
16 Февраля 2015
-
−109
- 1
- 2
- 3
- 4
def remove_duplicates(seq):
seen = set()
seen_add = seen.add
return [x for x in seq if x not in seen and not seen_add(x)]
замечательная функция, возвращающая уникальные элементы списка.
python_ninja,
16 Февраля 2015