- 1
- 2
- 3
- 4
main(){
char i, *mas[] = {"January","February","March","April","May","June","July","August","September","October","November","December"};
printf("%s%s%s",system("pause>nul"),puts(mas[i-1]),scanf("%d",&i));
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+135
main(){
char i, *mas[] = {"January","February","March","April","May","June","July","August","September","October","November","December"};
printf("%s%s%s",system("pause>nul"),puts(mas[i-1]),scanf("%d",&i));
}
Определение месяца по его номеру в 4 строчки.
+143
#include <unistd.h>
main()
{
int i=0;
char *cmd[] = { "ls", "-l", (char *)0 };
char *env[] = { "HOME=/usr/home", "LOGNAME=home", (char *)0 };
int rr;
for(i; i<6; i++)
{
switch(rr=fork())
{
case -1:execl ("/bin/ls", "ls", "-1", (char *)0);break;
case 0:execle ("/bin/ls", "ls", "-l", (char *)0, env);break;
case 1:execlp ("ls", "ls", "-l", (char *)0);break;
case 2:execv ("/bin/ls", cmd);break;
case 3:execve ("/bin/ls", cmd, env);break;
case 4:execvp ("ls", cmd);break;
}
}
}
- Ну это работают.
И проверяющий поставил плюс.
+146
if ((chlen = wcwidth(CharOf(CHDEREF(ch)))) <= 0) {
хорошо назвали переменную н курсес 5.9 tty_update.c
+146
case '16':
dm("sixteenth");
*b_=FULL_NOTE_DURATION_TCK/16 & 0x0F;
*c_=(FULL_NOTE_DURATION_TCK/16 & 0xF0) >> 8;
break;
Человек парсил хексы из строки и задумался немного при копировании блоков в свитче.
+107
char *getcwd(char *buf, size_t size)
{
if (!buf)
{
errno = EFAULT;
return NULL;
}
if (size < 2)
{
errno = ERANGE;
return NULL;
}
buf[0] = '.';
buf[1] = '\0';
return buf;
}
-- Где мы находимся, Сэр?
-- В корзине воздушного шара.
P.S. Ссылка на коммит - http://git.altlinux.org/people/ldv/packages/?p=girar.git;a=commit;h=3ff0ce7b00907ba1 dce6406f6
+147
789 static LPWSTR concatenate_string_list( LPCWSTR *list, int len )
790 {
791 LPCWSTR *t;
792 LPWSTR str;
793
794 for( t = list; *t ; t++ )
795 len += strlenW( *t );
796 len++;
797
798 str = heap_alloc( len * sizeof(WCHAR) );
799 if (!str) return NULL;
800 *str = 0;
801
802 for( t = list; *t ; t++ )
803 strcatW( str, *t );
804
805 return str;
806 }
говно от разработчиков wine "http://source.winehq.org/git/wine.git/blob/f4c2317adc44626cefab8d97ba4cc955f29a42a1 :/dlls/winhttp/request.c"
ребята не знают о существовании StrCatChain или StringCchCatEx
и никогда не читали Джоэл Сполски про маляра Шлемеля
"http://www.gnuman.ru/joel/Nazad_k_osnovam/"
+136
/* My favorite names for boolean values */
#define No 0
#define Yes 1
#define Maybe 2 /* tri-state boolean, actually */
Исходный код юниксовой утилиты top. Файл boolean.h.
+135
const int volume=100;
int index=0;
struct memo
{ int nach;
int size;
char name[1];
}raboch[volume];
void main()
{ setlocale(LC_ALL, "rus");
int switc=0;
int i,r;
int p=1;
int tekadr=0;
int ID=0;
int razmer;
int zap;
int paz;
int realproc=0;
int vhod=0;
int tekad;
char c[1024];
for(i=1023;i>=0;i--) { c[i]='0';}
for(i=99;i>=0;i--) { raboch[i].name[0]=' ';}
while(p>0) {
cout<<"Выберите действие: 1-Выделить память 2-Очистить 3-Дефрагментировать 4-состояние памяти 5-содежимое памяти 6-выход \n";
cin>>r;
int k=1;
switch(r)
{
case 1:
cout<<"Введите имя процесса:";
cin>>raboch[ID].name;
cout<<"Введите размер выделяемой памяти в байтах:";
cin>>raboch[ID].size;
razmer=raboch[ID].size;
raboch[ID].nach=tekadr;
for(i=tekadr; razmer>0;razmer--) {c[i]=raboch[ID].name[0]; i++; }
tekadr+=raboch[ID].size;
ID++;
realproc=ID;
break;;
case 2:
cout<<"Введите ID убиваемого процесса:";
cin>>zap;
razmer=raboch[zap].size;
for(i=raboch[zap].nach;razmer>0;razmer--) { c[i]='0'; i++;}
raboch[zap].name[0]='0';
raboch[zap].size=0;
tekadr=raboch[zap].nach;
realproc--;
ID--;
index=realproc;
break;;
case 3:
zap=1;
paz=0;
for(i=0;i<=102;i++)
{
if(c[i]!='0')
{
}
else
{ tekad=i;
while(k>0)
{
zap++;
if(c[raboch[zap].nach]!='0')
{ paz=raboch[zap].size;
for(vhod=raboch[zap].nach;paz>0;paz--) {c[tekad]=c[vhod]; c[vhod]='0'; tekad++; vhod++; }
int num;
for(num=0;num<100;num++) { if(raboch[num].name[0]=='0') { paz=num; num=100;} else{} }
if (raboch[zap].name[0]!=' ') { realproc--;
tekadr=tekad;
raboch[paz].size=raboch[zap].size;
raboch[zap].size=0;
raboch[zap].nach=0;
raboch[paz].name[0]=raboch[zap].name[0];
raboch[zap].name[0]=' ';}
else {} }
if (raboch[zap].name[0]==' ') { if (realproc>=0) {k=1;} else { k=0;} }
else { } }}}
break;;
case 4:
for(zap=ID-1;zap>=0;zap--)
{cout<<"Имя блока:";cout<<raboch[zap].name;cout<<"\n";
cout<<"Размер блока:";cout<<raboch[zap].size;cout<<"\n";
cout<<"Начальный адресс:";cout<<raboch[zap].nach;cout<<"\n";}
break;;
case 5:
cout<<"Введите начальный адресс памяти:";
cin>>zap;
cout<<"Введите конечный адресс памяти:";
cin>>paz;
for(i=zap;paz!=i;i++) {cout<<c[i];}
cout<<"\n";
break;;
case 6: p=0;
continue;}}}
Лаба по моделированию работы с памятью. Растягиваем буфер в голове))))
+134
void cmps_genslave(prog src[progs], char slave, char look){ // заполнение списков нелокальных имен
int s=0,m=0,l=0;
while( src[s].name[0]!=0 && src[s].name[0]!=slave && s<progs)s++;
if(!src[s].master) return;
if(look==slave){ if(src[s].nonlnum) return; l=s; }else
while( src[l].name[0]!=0 && src[l].name[0]!=look && l<progs)l++;
if(!src[l].master) return;
while(src[m+1].name[0]!=0 && src[l].master==src[m+1].name[0] && m+1<progs)m++;
strcpy(src[s].nonlocals+strlen(src[s].nonlocals),src[m].locals);
src[s].nonlnum+=src[m].lnum;
if(src[m].master) cmps_genslave(src,slave,src[m].name[0]);
}
курсовик по проге на втором курсе, изобретаем области видимости
+146
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27)
kill_proc(1,SIGTERM,1);
#else
...
Оригинальный способ проверить версию ядра линукса...
Где-то в сырцах реалтековского драйвера для GPIO...