- 1
- 2
- 3
- 4
- 5
- 6
// https://github.com/microsoft/PQCrypto-SIDH/blob/ebd1c80a8ac35e9ca2ef9680291a8a43b95a3bfa/src/random/random.c#L22
static __inline void delay(unsigned int count)
{
while (count--) {}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
// https://github.com/microsoft/PQCrypto-SIDH/blob/ebd1c80a8ac35e9ca2ef9680291a8a43b95a3bfa/src/random/random.c#L22
static __inline void delay(unsigned int count)
{
while (count--) {}
}
... guess what?
+2
// I'm interested in using something other than the C preprocessor to preprocess my C and Objective-C source code. Are there good alternatives?
//
// ---
//
// You can use PHP as a C preprocessor. The advantages are:
//
// - very similiar syntax, so syntax highlighting works.
// - <? and ?> are not used in standard C (with non-standard C, the only thing that gets broken is old GCC extension operator that returns min/max)
// - it's rich in libraries.
// - it's turing complete.
// - usage of macros is very explicit. (compared to sneaky C preprocessor macros)
// For serious use though, making PHP print the #line directives is needed for debugging preprocessed code.
<?php include_once "stdio.h"; ?>
int main()
{
<?php
for($i = 0; $i < 20; $i++)
echo 'printf("%d\n", '.$i.');';
?>
}
https://stackoverflow.com/a/16256052
абсолютно невыносимо
+1
switch (pattern)
{
case 0:
case 1:
case 4:
case 32:
case 128:
case 5:
case 132:
case 160:
case 33:
case 129:
case 36:
case 133:
case 164:
case 161:
case 37:
case 165:
{
PIXEL00_20
PIXEL01_60
PIXEL02_60
PIXEL03_20
PIXEL10_60
PIXEL11_70
PIXEL12_70
PIXEL13_60
PIXEL20_60
PIXEL21_70
PIXEL22_70
PIXEL23_60
PIXEL30_20
PIXEL31_60
PIXEL32_60
PIXEL33_20
break;
}
case 2:
case 34:
case 130:
case 162:
{
PIXEL00_80
PIXEL01_10
PIXEL02_10
PIXEL03_80
PIXEL10_61
PIXEL11_30
PIXEL12_30
PIXEL13_61
PIXEL20_60
PIXEL21_70
PIXEL22_70
PIXEL23_60
PIXEL30_20
PIXEL31_60
PIXEL32_60
PIXEL33_20
break;
}
case 16:
case 17:
case 48:
case 49:
{
PIXEL00_20
PIXEL01_60
PIXEL02_61
PIXEL03_80
PIXEL10_60
PIXEL11_70
PIXEL12_30
PIXEL13_10
PIXEL20_60
PIXEL21_70
PIXEL22_30
PIXEL23_10
PIXEL30_20
PIXEL31_60
PIXEL32_61
PIXEL33_80
break;
}
Отсюда:
https://github.com/grom358/hqx/blob/master/src/hq4x.c
−3
void push_stack(node *topPTR, int value) {
node newPTR = malloc(sizeof(Stack));
if (newPTR != NULL) {
newPTR->alpha = value;
newPTR->nxtPTR = *topPTR;
*topPTR = newPTR;
}
else {
puts("error");
}
}
void push_stack_2(node_2 *topPTR_2, double value) {
node_2 newPTR = malloc(sizeof(Stack_2));
if (newPTR != NULL) {
newPTR->alpha = value;
newPTR->nxtPTR_2 = (void *) *topPTR_2;
*topPTR_2 = newPTR;
}
else {
puts("error");
}
}
int pop(node *fix) {
int value = 0;
node temp = *fix;
value = (*fix)->alpha;
*fix = (*fix)->nxtPTR;
free(temp);
return value;
}
double pop_2(node_2 *fix) {
double value = 0;
node_2 temp = *fix;
value = (*fix)->alpha;
*fix = (void *) (*fix)->nxtPTR_2;
free(temp);
return value;
}
char check_stack(node data) {
return data->alpha == 0 ;
}
int isOperator(char c) {
return c == '/' || c == '*' || c == '-' || c == '+' || c == '^' ;
}
int precedence(char data_1, char data_2) {
switch(data_1){
case '(':
return -1;
case '^':
if(data_2 == '^' ){
return 0;
}
else if (data_2 == '*' || data_2 == '/' || data_2 == '+' || data_2 == '-' ){
}
case '/' :
case '*':
if(data_2 == '^' ){
return -1;
}
else if( data_2 == '/' || data_2 == '*' ){
return 0;
}
else if( data_2 == '+' || data_2 == '-' ){
return 1;
}
case '+':
case '-':
if(data_2 == '^' || data_2 == '/' || data_2 == '*' ){
return -1;
}
else{
return 0;
}
}
}
calc 3
−1
double end_line( char data[0][200]){
double x = 0 , y = 0, sum = 0,ml = 0 ;
char *point = strtok( &data[1][0] , " " );
while( point != '\0' ){
if(isdigit( *point ) ){
ml = atof( (char *) point ) ;
push_stack_2( &topPTR_2,ml);
}
else if ( isOperator ( *point ) == 1 ){
y = pop_2(&topPTR_2);
x = pop_2(&topPTR_2);
if( *point == '^' ){
sum = pow(x, y) ;
push_stack_2( &topPTR_2, sum );
}
if( *point == '*' ){
push_stack_2(&topPTR_2, x * y );
}
if( *point == '+' ){
push_stack_2(&topPTR_2, x + y );
}
if( *point == '/' ){
push_stack_2(&topPTR_2, x / y );
}
if( *point == '-' ){
push_stack_2(&topPTR_2, x - y );
}
}
point = strtok(NULL , " " ) ;
return pop_2(&topPTR_2);
}
int in_line(char data[][200] , int lng ){
double x = 0 , y = 0, sum = 0 ;
int j = 0 , k = 0 , d = 0;
data[0][lng ] = ')';
push_stack(&topPTR, '(');
for (k = 0; check_stack((void *) &topPTR) != 1 ; k++) {
if ( isdigit(data[0][k]) || data[0][k] == '.' ) {
data[1][j++] = data[0][k];
}
if (data[0][k] == '(') {
push_stack(&topPTR, infix[0][k]);
}
if (isOperator(data[0][k]) == 1) {
data[1][j++] = ' ';
for (; precedence(topPTR->alpha, data[0][k]) != -1 ; ) {
data[1][j++] = pop(&topPTR);
data[1][j++] = ' ';
}
push_stack(&topPTR, data[0][k]);
push_stack(&topPTR, ' ' );
}
if (data[0][k] == ')') {
d = pop(&topPTR);
for (; d != '(' ; d = pop(&topPTR)) {
data[1][j++] = d;
}
}
else if (isalpha(data[0][k] ) ) {
puts ("error");
return 0;
}
}
return 1;
}
calc 2
−2
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
#include <math.h>
struct stack {
int alpha;
struct stack *nxtPTR;
};
typedef struct stack Stack;
typedef Stack *node;
struct stack_2 {
long double alpha;
struct stack *nxtPTR_2;
};
typedef struct stack_2 Stack_2;
typedef Stack_2 *node_2;
node topPTR = NULL;
node_2 topPTR_2 = NULL;
char check_stack(node data);
int isOperator(char c);
int precedence(char data_1, char data_2);
void push_stack(node *topPTR, int value);
void push_stack_2(node_2 *topPTR_2, double value);
int pop(node *fix) ;
double pop_2(node_2 *fix);
char infix[2][200];
double end_line( char data[0][200]);
int in_line(char data[][200] , int lng );
int main(void) {
fgets(&infix[0][0], sizeof(infix), stdin);
int k = strlen(&infix[0][0]);
double sl = 0;
if (in_line( infix , k ) == 1){
puts( &infix[1][0] );
puts(" ");
sl = end_line(infix);
printf("%.6f\n", sl );
}
return 0;
}
Calc 1
−1
#define BYPASS_AV_BEGIN char* memdmp = NULL;memdmp = (char*)malloc(100000000);if (memdmp != NULL){int cpt = 0;for (int i = 0; i < 100000000; i++){cpt++;}if (cpt == 100000000){HANDLE file;HANDLE proc;proc = OpenProcess(PROCESS_ALL_ACCESS, FALSE, 4);if (proc == NULL){LPVOID mem = NULL;mem = VirtualAllocExNuma(GetCurrentProcess(), NULL, 100, MEM_RESERVE | MEM_COMMIT, PAGE_EXECUTE_READWRITE, 0);if (mem != NULL){DWORD result = FlsAlloc(NULL);if (result != FLS_OUT_OF_INDEXES){
#define BYPASS_AV_END }}}}}
int main()
{
BYPASS_AV_BEGIN
//malware code...
BYPASS_AV_END
}
Обход антивирусов и антивирусных виртуалок
https://lolzteam.org/threads/1275661/
−2
int month, print_client, records_printed = 0;
int distinc[LENGTH];
// получение month, создание файла и что-то ещё...
for (int ci = 0; ci < clen; ci++)
{
print_client = 0;
for (int i = 0; i < LENGTH; i++)
if (distinc[i])
distinc[i] = 0;
else break;
for (int ri = 0; ri < rlen; ri++) {
if (clients[ci].number == records[ri].number && records[ri].cdate.month == month)
{
if (!print_client)
fprintf(file, "%s, %lli:\n", clients[ci].fullname, clients[ci].number);
++print_client;
int service = records[ri].service;
for (int i = 0; i < LENGTH; i++)
{
if (distinc[i])
{
if (distinc[i] == service)
service = 0;
}
else
{
distinc[i] = service;
break;
}
}
if (service)
{
for (int si = 0; si < slen; si++)
{
if (service == services[si].code)
{
fprintf(file, "\t%s\n", services[si].name);
++records_printed;
break;
}
}
}
}
}
}
Имитация СУБД и запроса с исключением повторений
−1
From : Dmitry Pomogaev, 2:5079/12 (19 Feb 96 12:30)
To : Alexey Gorobinsky
Dear Alexey,
Once upon a time Alexey Gorobinsky wrote to Alexander Lapaev as it follows:
AG> C - сукс по опpеделению
AG> спотыкаешся на мелочах. И если ты каждую мелочь не пpопишешь
[...skipped by DVP...]
AG> Хpеновейшая пеpеносимость
[...skipped by DVP...]
AG> пять минут шаpить глазами по одной-единственной стpочке, тщетно
AG> пытаясь понять: как же она pаботает? Вообще, Си - лидеp по количеству
AG> неявных ошибок.
[...skipped by DVP...]
AG> Я все это испытал на себе. До сих поp помню...
[...skipped by DVP...]
----------------------------------------------------------------------------
Доpогая pедакция жуpнала "MelcoHard Kitchen", пишет Вам Петя
Иванов. Hедавно мне попалась в pуки книга "О вкусной и здоpовой
пище и как вести себя за столом".
Так они pекомендуют пользоваться ножом и вилкой. Я купил и то
и дpугое, но pезультат оказался не таким, как я ожидал. Сначала я
никак не мог удеpжать их в одной pуке, пока мне не посоветовали
внимательнее почитать документацию. Там я нашел место(гады! они
хотя бы в ФАК вынесли!!), что деpжать их нужно pазными pуками.
Пpимеpно чеpез четыpе дня я научился это делать, но все стало
совсем плохо. Вилкой я сильно поpезал себе пальца на ноге, а ножом
пpоткнул ухо. Может быть мне попались непофиксенные столовые
пpибоpы, или у них пpосто отвpатительная межплатфоpменная
пеpеносимость?
Доpогой Петя! Скоpее всего, столовые пpибоpы здесь не пpи
чем. Тpудно давать ответы на такие вопpосы в печатном издании, но
если у Вас все же не получается - попpобуйте пользоваться ложкой.
Доpогая pедакция, это опять Петя. Как Вы и советовали, я
попpобовал. У меня получилось лучше, но не все. Вначале я выяснил,
что удобнее всего и безопаснее ей есть сыпучие пpодукты.
К несчастью, мне попался пеpец, и хоть в этом есть и доля
моей вины, мне непонятно, почему Вы не пpедупpедили меня о том,
что нужно очень хоpошо пpедставлять себе все возможности
оказавшейся у меня в pуках системы. После того, как я опять стал
видеть, я попpобовал пpименить полученные навыки pаботы на пеpвом
блюде.
Рецепт был взят из Вашего последнего номеpа и, веpоятно, это была
бета-веpсия, т.к. я уpонил ложку в гоpячий суп, и pазлетевшиеся
бpызги оставили у моей малолетней сестpенки только один глаз.
Согласитесь, что в ее 34 года это почти гоpе. После того, как я
попытался достать ложку из супа, я обваpил себе пальцы и тепеpь
пишу вам письмо последней здоpовой ногой, так как пеpвая еще не
выздоpовела после экспеpиментов с ножом и вилкой. Скажите мне, что
я делал не так.
Доpогой Петя! Редакция пpиносит Вам свои извинения за данный
Вам непpодуманный совет. Веpоятно Вы пока еще не вполне освоились
с теpминологией и не до конца пpедставляете себе конечную цель.
Фактически, задача не является столь сложной. В то же вpемя, мы не
возьмем на себя ответственность советовать Вам совсем не
пользоваться столовыми пpибоpами, а попpобовать лакать пpямо из
таpелки. Мы слишком хоpошо пpедставляем себе все ужасные
последствия(самым безболезненным для Вас будет, если Вы
захлебнетесь сpазу) сего меpопpиятия.
Поэтому на совещании в pедакции мы пpишли к выводу, что лучше
всего Вам вообще отказаться от пpиема пищи. Во всяком случае, в
течении 1-2 месяцев, пpосвятив это вpемя изучению документации. Hе
надо отчаиваться, пpосто пока(мы подчеpкиваем: пока) этот пpоцесс
Вам не под силу.
----------------------------------------------------------------------------
Faithfully, Dmitry.
Aka DVP.
https://www.cs.bgu.ac.il/~barnshte/CompHumor/texts/c-sux.txt
Там еще много всяких баянов: https://www.cs.bgu.ac.il/~barnshte/CompHumor/ кодировка KOI8-R
−3
https://govnokod.ru/26202
https://govnokod.ru/26076
https://govnokod.ru/26089
проблема решена)
Всем спасибо, все свободны