- 1
Все Лучший Сток Глупый поиск Наговнокодить! Отзывы
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+136
Все Лучший Сток Глупый поиск Наговнокодить! Отзывы
Иногда говнокод находится перед самыми глазами :)
Коли ставишь автоопределение кодировки - реформал кажет предложения на русском, а надпись отзывы и заголовок окна превращаются в Говнокод.СЂСѓ: РїРѕ колено РІ РєРѕРґРµ.
Коли ставишь православный UTF-8 - с вижу все верно, а жмешь на отзывы и лицезреешь ��� ��������� 104 ����.
Когда корабли бороздят просторы Вселенной - мы до сих пор не может устаканиться с кодировками.
Может ну его, и как раньше кнопочки на сайте - Windows-1251, Mac, Koi-8 и Iso :)
+147
var n = Math.abs(((date2 - date1) / 86400000) + 1);
var frac = n - Math.floor(n);
if (frac > 0.5) {
n = Math.ceil(n);
} else if (frac < 0.5 && frac.toPrecision(2) != 0) {
n = Math.floor(n);
n--;
}
n++;
Мой говнокод.
Задача: найти количество дней между двумя датами, включая сами эти даты. Время в датах сброшено в 0
Фишка в том "(date2 - date1) / 86400000) + 1", не работает когда есть перевод часов между двумя датами.
И вот такое говно я написал, которое по некоторым дням НЕ РАБОТАЕТ.
переписал вот так:
var n = Math.abs(date2 - date1);
n /= 3600000;
var mod = n % 24;
if (mod == 23) {
n++;
} else if (mod == 1) {
n--;
}
n /= 24;
n++;
теперь не важно сколько переводов часов прошло между датами: 0, 1, 2 или 5.
По поводу говнокода:
За такой frac на авторе надо зарабатывать фраг!
Oleg_quadro: автор, убей себя головой о клаву:
Oleg_quadro: "vb fgrbfvgr bgfvrt rtuijnikjikni56trg5rt6g45t6rgyh hnjunh ujuuuuuuuuuuuuuuuuuuuy"
+121
// то проверяем его куки
// вдруг там есть логин и пароль к нашему скрипту
if (isset($_COOKIE['login']) && isset($_COOKIE['password'])) {
// если же такие имеются
// то пробуем авторизовать пользователя по этим логину и паролю
$login = mysql_real_escape_string($_COOKIE['login']);
$password = mysql_real_escape_string($_COOKIE['password']);
// и по аналогии с авторизацией через форму:
// делаем запрос к БД
// и ищем юзера с таким логином и паролем
$query = "SELECT `id`
FROM `users`
WHERE `login`='{$login}' AND `password`='{$password}'
LIMIT 1";
$sql = mysql_query($query) or die(mysql_error());
// если такой пользователь нашелся
if (mysql_num_rows($sql) == 1) {
// то мы ставим об этом метку в сессии (допустим мы будем ставить ID пользователя)
$row = mysql_fetch_assoc($sql);
$_SESSION['user_id'] = $row['id'];
авторитизация из кук ну сколько не говори не храни в куках пароли и логины нет найдется один говонокодер которому все не почем и учит детей плохому
+113
private static Predicate<Token> GetMatchBracePredicate(Token token)
{
if (token is Token.BeginBrace)
return delegate(Token t) { return t is Token.BeginBrace; };
if (token is Token.BeginQuote)
return delegate(Token t) { return t is Token.BeginQuote; };
if (token is Token.BeginRound)
return delegate(Token t) { return t is Token.BeginRound; };
if (token is Token.BeginSquare)
return delegate(Token t) { return t is Token.BeginSquare; };
// ...
С просторов интернета.
−154.8
create table user.profile (
...
gender boolean,
...
)
Очевидно, true - это мужик :D
+152
#include <stdio.h>
void main()
{
printf("WTF? :)\n");
}
#undef main
int HAHA()
{
I();
return 0;
}
как же написать программу с
void main();
????
gcc ./main.cpp -Dmain=I -DHAHA=main -lstdc++
P.S. страуструп продолжает рвать на себе волосы от использования Cpp
+1
EXAMPLE
To specify what kind of authorization is needed to execute the program /usr/bin/pk-example-frobnicate as another user, simply write an action definition file like this
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>
<vendor>Examples for the PolicyKit Project</vendor>
<vendor_url>http://hal.freedesktop.org/docs/PolicyKit/</vendor_url>
<action id="org.freedesktop.policykit.example.pkexec.run-frobnicate">
<description>Run the PolicyKit example program Frobnicate</description>
<description xml:lang="da">Kør PolicyKit eksemplet Frobnicate</description>
<message>Authentication is required to run the PolicyKit example program Frobnicate (user=$(user), program=$(program), command_line=$(command_line))</message>
<message xml:lang="da">Autorisering er påkrævet for at afvikle PolicyKit eksemplet Frobnicate (user=$(user), program=$(program), command_line=$(command_line))</message>
<icon_name>audio-x-generic</icon_name>
<defaults>
<allow_any>no</allow_any>
<allow_inactive>no</allow_inactive>
<allow_active>auth_self_keep</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/pk-example-frobnicate</annotate>
</action>
</policyconfig>
Simply write an action definition file like this, they said...
0
/* https://fstarlang.github.io/lowstar/html/Introduction.html#the-essence-of-low
Consider the following very simple program:
module Intro
module P = LowStar.Printf
module C = LowStar.Comment
module B = LowStar.Buffer
open FStar.HyperStack.ST
open LowStar.BufferOps
let main (): St Int32.t =
push_frame ();
let b: B.buffer UInt32.t = B.alloca 0ul 8ul in
b.(0ul) <- 255ul;
C.comment "Calls to printf are desugared via meta-programming";
let s = "from Low*!" in
P.(printf "Hello from %s\nbuffer contents: %xul\n"
s 8ul b done);
pop_frame ();
0l
....
Once compiled by the KreMLin compiler, we obtain the following C code:
*/
int32_t main()
{
uint32_t b[8U] = { 0U };
b[0U] = (uint32_t)255U;
/* Calls to printf are desugared via meta-programming */
Prims_string s = "from Low*!";
LowStar_Printf_print_string("Hello from ");
LowStar_Printf_print_string(s);
LowStar_Printf_print_string("\nbuffer contents: ");
LowStar_Printf_print_lmbuffer_u32((uint32_t)8U, (uint32_t *)b);
LowStar_Printf_print_string("\n");
return (int32_t)0;
}
Какая-то компилируемая в сишку хренотень с завтипами, разрабатываемая в Microsoft Research
+1
function main() {
const x = 21;
let s = "foo";
const r = `a${x * 2}X${s}X${s}Z`;
print(r);
}
Продолжаем будни говно-писания говно-компилятора на LLVM. серия - а ваш говно-компилятор может так...
и результат работы
>>
C:\temp\MLIR_to_exe>out.exe
a42XfooXfooZ
+3
template<typename T>
struct [[nodiscard]] InplacePointerGuard {
InplacePointerGuard(T *& ptr_) : ptr(ptr_) {}
~InplacePointerGuard()
{
if (ptr != nullptr) {
ptr->~T();
}
}
T *& ptr;
};
template<typename EventType, typename... Args>
bool publishEmplace(Args &&... args) const
{
static_assert((std::is_base_of_v<Event, EventType> && std::is_convertible_v<const EventType *, const Event *>),
"EventType must be a public subtype of Event");
auto typeIdx = Event::getStaticIndex<EventType>();
std::aligned_storage_t<sizeof(EventType), alignof(EventType)> eventStorage;
EventType *eventConstructed = nullptr;
auto guard = InplacePointerGuard(eventConstructed);
publishEmplaceImpl<EventType>(typeIdx, eventStorage, eventConstructed, std::forward<Args>(args)...);
return eventConstructed != nullptr;
}
template<typename EventType, typename... Args>
static EventType *constructEvent(std::aligned_storage_t<sizeof(EventType), alignof(EventType)> & eventStorage,
Args &&... args)
{
return std::launder(new(&eventStorage) EventType(std::forward<Args>(args)...));
}
template<typename EventType, typename... Args>
void publishEmplaceImpl(const std::type_index & typeIdx,
std::aligned_storage_t<sizeof(EventType), alignof(EventType)> & eventStorage,
EventType *& eventConstructed,
Args &&... args) const
{
if (auto it = callbacks.find(typeIdx); it != callbacks.end()) {
for (const auto & [subId, callback] : it->second) {
if (!eventConstructed) {
eventConstructed = constructEvent<EventType>(eventStorage, std::forward<Args>(args)...);
}
callback(*eventConstructed);
}
}
auto range = EventsRelation::RelationManager::getParentsRange(typeIdx);
for (auto it = range.first; it != range.second; ++it) {
if (!eventConstructed) {
publishEmplaceImpl<EventType>(it->second, eventStorage, eventConstructed, std::forward<Args>(args)...);
} else {
publishImpl(it->second, *eventConstructed);
}
}
}