- 1
integerValue *= 0;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+14
integerValue *= 0;
не обнулил, а на ноль умножил
−4
#include <stdio.h>
#include <string.h>
static struct foo {
} fooo;
int main(void)
{
int peace_of_shit = 0xFF;
memcpy(&fooo, &dream, sizeof(peace_of_shit));
**/Хочу увидеть говно**/
return 0;
}
Как я могу увидеть говно, что лежит в fooo?)
−3
enum test_result {
TEST_FAILED = -1,
TEST_SKIPPED,
TEST_OK
}
struct test_node {
const char *name;
const char *descr;
enum test_result (*measurement_test_handler)(void* params);
void *params;
enum test_result meas_result;
enum test_result init_result;
}
О духи говнакода наставьте агнца вашего на путь истинный. Написал сие я, запустил и всё пошло по п*изде, по причине невыравненых данных. #pragma pack не помог. Помогло лишь изменение типа enum test_result на uint8_t. Подскажите, дабы не наступать на подобные грабли болей, как кто себя проверяет при работе со структурами?
−1
#include<stdio.h>
main(void){
#define SIZE 10
int workers[SIZE] = {0,0,0,0,0,0,0,0,0};
int frequency[SIZE] = {0,0,0,0,0,0,0,0,0};
int freq[SIZE] = {0,0,0,0,0,0,0,0,0};
int salary = 200;
int m = 0, k = 0 ,n = 0, x = 0;
for( k = 1 ; k <= SIZE - 1 ; ++k){
printf("inter summary cash = ");
scanf("\n%d", &m);
workers[k] = m;
freq[k ] = (int) salary + ( workers[k] * 0.01 ) * 9;
printf("number index%4d up salary $%d\n", k , freq[k]);
puts("");
}
for(n = 1;n <= SIZE - 1; n++){
freq[x] = salary + (workers[n] * 0.01 ) * 9 ;
if(freq[n] >= 200 && freq[n] < 1000 ){
++frequency[(int) freq[n] / 100 ] ;
}
else if ( freq[n] > 1000 ){
++frequency[10];
}
}
for(x = 2; x <= SIZE ; x++ ){
printf("$%4d = $%4d %d\n",salary, salary + 99, frequency[x] );
salary += 100;
}
return 0;
}
Задачу по Дейтелам решал.
+14
/*
удалено по просьбе правообладателя
*/
Думал я, что меня уже так просто не удивишь, пока не увидел ЭТО!
+1006
if(cond) {
#define INIT_COUNT 1
} else {
#define INIT_COUNT 2
}
Тот, кто показал мне этот кусочек кода, был очень удивлем тем , что все время выполняется только ветка else.
+1000
int cutNCountLt3(char *in, char *out, long min) {
int lt3 = 0;
char *i = in, *j = in, *k = out;
while (*j && *i) {
j = i;
while (*j != ' ' && *j)
*k++ = *j++;
*k++ = *j;
int len = j - i;
lt3 += len < 3;
if (len < min)
*(k -= len + 1) = '\0';
i = j + 1;
}
return lt3;
}
К #9911
А конкретнее http://govnokod.ru/9911#comment295215
После нескольких ревизий в комментах, подумал, что наложить здесь будет лучше... Прошу любить, но не жаловать
+973
/* */
int fooBar() {
/* do something */
/* - */ return NULL;
/* + */ return 0ULL;
}
> src/foobar.c:42:3: warning: return makes integer from pointer without a cast
> return NULL;
П О Ч И Н Е Н О
#17766
+142
int do_execve(const char *filename,
const char __user *const __user *__argv,
const char __user *const __user *__envp,
struct pt_regs *regs)
{
struct user_arg_ptr argv = { .ptr.native = __argv };
struct user_arg_ptr envp = { .ptr.native = __envp };
/* exec mt_debug*/
int ret;
int retry = 3;
do{
ret = do_execve_common(filename, argv, envp, regs);
printk(KERN_DEBUG"[exec] %s(%d)\n", filename, retry);
}while( -999 == ret && retry-- > 0);
return ret;
}
Ядро от MTK. Они логгируют каждый exec на уровне ядра.
+140
int __STRNCMP__(const char s1, const char s2, size_t n)
{
for (; n > 0; s1++, s2++, --n)
if (s1 != s2)
return (((unsigned char )s1 < (unsigned char )s2) ? -1 : +1);
else if (*s1 == '\0')
return 0;
return 0;
}
Зачем нужен такой велосипед?