- 1
- 2
- 3
- 4
- 5
- 6
- 7
#include <iostream>
int main(void)
{
for (int i=0;i<600000000;i++)
cout<<"Ten minuters";
//IT Works!
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+100
#include <iostream>
int main(void)
{
for (int i=0;i<600000000;i++)
cout<<"Ten minuters";
//IT Works!
}
Реальный код с cyberforum. Задание звучало как "Написать таймер, каждые 10 минут выводящий какое-нибудь сообщение". Один умник написал такое нечто, от чего я просто впал в ступор.
+56.3
/*
Данный кусок кода был сперт uncle Lem'ом из небесной канцелярии 27.02.2008
*/
#include<time.h>
#include<stdlib.h>
#include<iostream.h>
#include"russian.h"
void world();
void main() {
srand(time(0));
world();
}
void world() { /*void (пустота) указывает на безвыходность ситуации*/
const bool good = false, /*Объективная реальность, данные получены на основе личного опыта*/
evil = !good; /*ну, это логично... зло - это НЕ добро*/
/*пока рай... добро, зло и инфернальность - по нулям, армагеддон пока не светит*/
unsigned long int evil_level = 0; /*Зло - в минуса не уйдет. Факт*/
short int good_level = 0; /*добро - сильно не вырастет. Не дадут*/
int infernal = 0; /*Инфернальность. ПОКА ноль. Позаимствовано у Ефремова*/
int years = 0; /*начинается жизнь на Земле*/
int people_resources = 0; /*человеческие ресурсы (для Армагеддона)*/
int evil_resources = 0; /*ресурсы сил зла (для Армагеддона)*/
while(evil) { /*пока существует зло...*/
years++; /*и годы идут...*/
if (evil && !good) { /*если в текущем году было зло и не было добра*/
infernal += evil_level++; /*инфернальность растет на уровень зла, которое, в свою очередь, становится сильнее*/
good_level--; /*а добро слабеет под натиском зла*/
}
else if (evil && good || !evil && !good) { /*если в текущем году было добро и зло или ни того, ни другого*/
infernal = infernal; /*инфернальность остается на том же уровне (да, тупо, зато наглядно)*/
}
else if (!evil && good) { /*если в текущем году было добро и не было зла*/
infernal -= good_level++; /*инфернальность уменьшается на уровень добра, которое, в свою очередь, становится сильнее*/
evil_level--; /*а зло слабеет под натиском добра*/
}
if (infernal >= 100) { /*когда уровень инфернальности достигнет критической точки, начинается Армагеддон*/
people_resources = 1+rand()%(1000000); /*это у нас человеческие ресурсы*/
evil_resources = 1+rand()%(1000000); /*а это - адские*/
/*тут у нас типа битва людишек против нечисти. ака Армагеддон*/
if (people_resources<evil_resources) { /*если людей меньше, то хана. Ад победил. Пипец всему живому. Начало Апокалипсиса*/
cout<<"Все, армагеддец настал, комп тебе больше не понадобится. Беги, покупай белые тапочки\n";
return;
}
else if (people_resources>evil_resources) { /*и наоборот, если люди победили - начало райской жизни. Манна небесная, пара белых крыльев и все, что к ним прилагается*/
cout<<"Че сидишь, готовься получать белые крылья и порцию манны небесной\n";
return;
}
else continue; /*а если поровну - то ничья, живем дальше*/
}
}
}
Давным-давно, когда я только начинал изучать программирование, ради лулзов был рожден вот такой говнокод говномира. Позже, с появлением классов в моем мировосприятии, был рожден расширенный вариант этого мира с классами, но, к сожалению, в ограничение на сотню строк он никак не хочет влезать :(
В общем, не судите строго, одна из первых программ вообще, и выложено без изменений)
+159.7
<?php
$file_name = 'http://www.****';
//$html_string = @file_get_contents($file_name);
ob_start();
readfile($file_name);
$html_string = ob_get_contents();
ob_end_clean();
?>
копаю проект, на котором идет загрузка данных из инета...
хваталка там про жесть .... автор решил, что использовать одну функцию будет слишком просто ...
хотя отчасти я его понимаю... скорее всего все жутко тормозило...
сам в детстве так ошибался, если дергаешь из инета стандартными средствами что-нибудь, то там нельзя задать таймаут. и если тебя вдруг забанили, то вся дергалка виснет обычно минуты на полторы-две. А то, что мы тут видим - это танцы с бубном, а вдруг заработает... не люблю когда так делают :(
PS: ну если @ в коде встречается - то автора можно сразу добивать чем-нибудь тяжелым... особенно сильно хотелось это сделать, когда убил часов 10 на поиск места, где происходит ошибка и почему выводится белый экран...
+108.6
/**
* Копирует первое большое число во второе.
*
* @param a большое число приемник
* @param b большое число источник
* @param n длинна больших чисел в словах
*
* @return FALSE - четное, TRUE - нечетное
*/
void int_copy(uword_t *a, const uword_t *b, const int n)
{
memcpy(a, b, sizeof(a[0]) * n);
}
Вот такую милую функцию я нашел в проекте над которым работаю.
−108.2
Движение.Состояние = Перечисления.СостоянияРаботникаОрганизации[Причина.Метаданные().ЗначенияПеречисления[Перечисления[Причина.Метаданные().Имя].Индекс(Причина)].Имя];
.
Видимо, защита от шпиона: вот так определяется значение перечисления. (Причина - это тоже перечисление)
+890.7
#define private public
−5.8
function IntToMonth(NumberMonth: Integer): string;
begin
сase NumberMonth of
1: Result := 'Январь';
2: Result := 'Февраль';
3: Result := 'Март';
4: Result := 'Апрель';
5: Result := 'Май';
6: Result := 'Июнь';
7: Result := 'Июль';
8: Result := 'Август';
9: Result := 'Сентябрь';
10: Result := 'Октябрь';
11: Result := 'Ноябрь';
12: Result := 'Декабрь';
else
Result := 'Август';
end;
end;
Думаю, по названию функции все понятно :)
+1
// https://github.com/torvalds/linux/blob/b6dad5178ceaf23f369c3711062ce1f2afc33644/rust/alloc/alloc.rs#L376
pub const fn handle_alloc_error(layout: Layout) -> ! {
const fn ct_error(_: Layout) -> ! {
panic!("allocation failed");
}
fn rt_error(layout: Layout) -> ! {
unsafe {
__rust_alloc_error_handler(layout.size(), layout.align());
}
}
unsafe { core::intrinsics::const_eval_select((layout,), ct_error, rt_error) }
}
// https://github.com/torvalds/linux/blob/b6dad5178ceaf23f369c3711062ce1f2afc33644/rust/kernel/lib.rs#L96-L103
fn panic(info: &core::panic::PanicInfo<'_>) -> ! {
pr_emerg!("{}\n", info);
// SAFETY: FFI call.
unsafe { bindings::BUG() };
// Bindgen currently does not recognize `__noreturn` so `BUG` returns `()`
// instead of `!`. See <https://github.com/rust-lang/rust-bindgen/issues/2094>.
loop {}
}
// https://github.com/torvalds/linux/blob/master/include/asm-generic/bug.h#L51-L68
/*
* Don't use BUG() or BUG_ON() unless there's really no way out; one
* example might be detecting data structure corruption in the middle
* of an operation that can't be backed out of. If the (sub)system
* can somehow continue operating, perhaps with reduced functionality,
* it's probably not BUG-worthy.
*
* If you're tempted to BUG(), think again: is completely giving up
* really the *only* solution? There are usually better options, where
* users don't need to reboot ASAP and can mostly shut down cleanly.
*/
#ifndef HAVE_ARCH_BUG
#define BUG() do { \
printk("BUG: failure at %s:%d/%s()!\n", __FILE__, __LINE__, __func__); \
barrier_before_unreachable(); \
panic("BUG!"); \
} while (0)
#endif
О том, как в ядре Linux говнораст обрабатывает ошибку аллокации
−4
Зачем простенькие проги, написанные на MASM коннектятся к ip адресу Microsoft 20.99.133.109:443?
−2
cli
a: jmp a