- 1
- 2
http://my.sec.ru/author.cfm
http://daily.sec.ru/search.cfm?s=%22+%2F%3E
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+126
http://my.sec.ru/author.cfm
http://daily.sec.ru/search.cfm?s=%22+%2F%3E
И это называется портал по безопасности...
+127
typedef struct _xjmp_stru {
unsigned long Ebp;
unsigned long Ebx;
unsigned long Edi;
unsigned long Esi;
unsigned long Esp;
unsigned long Eip;
} xjmp_stru;
typedef int xjmp_buf[6];
__declspec(naked)
int __cdecl xsetjmp(xjmp_buf)
{
__asm
{
mov edx, [esp+4]
mov [edx], ebp
mov [edx+4], ebx
mov [edx+8], edi
mov [edx+12], esi
mov [edx+16], esp
mov eax, [esp]
mov [edx+20], eax
xor eax, eax
ret
}
}
__declspec(naked, noreturn)
void __cdecl xlongjmp(xjmp_buf, int)
{
__asm
{
mov edx, [esp+4]
mov ebp, [edx]
mov ebx, [edx+4]
mov edi, [edx+8]
mov esi, [edx+12]
mov eax, [esp+8]
test eax, eax
jne __
inc eax
__:
mov esp, [edx+16]
add esp, 4
mov edx, [edx+20]
jmp edx
}
}
int dummy(xjmp_buf jbuf)
{
volatile int jk = 8;
if (jk)
xlongjmp(jbuf, 2);
else
return 7;
}
int main()
{
xjmp_buf jbuf;
if (xsetjmp(jbuf))
{
puts("excpt");
return -1;
}
dummy(jbuf);
puts("great work");
return 0;
}
экая хренотень
+964
namespace WindowsFormsApplication12
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "") textBox1.Text = "1";
if (textBox2.Text == "") textBox2.Text = "1";
if (textBox3.Text == "") textBox3.Text = "1";
label7.Text = textBox1.Text + "x2 + " + textBox2.Text + "x + " + textBox3.Text;
label4.Text = "x1 = " + Convert.ToString((Convert.ToInt32("-" + textBox2.Text) + (Math.Sqrt(Math.Pow(Convert.ToInt32(textBox2.Text), 2) - 4
* Convert.ToInt32(textBox1.Text) * Convert.ToInt32(textBox3.Text)))) / (2 * Convert.ToInt32(textBox1.Text)));
label5.Text = "x2 = " + Convert.ToString((Convert.ToInt32("-" + textBox2.Text) - (Math.Sqrt(Math.Pow(Convert.ToInt32(textBox2.Text), 2) - 4
* Convert.ToInt32(textBox1.Text) * Convert.ToInt32(textBox3.Text)))) / (2 * Convert.ToInt32(textBox1.Text)));
label6.Text = "D = " + (Math.Pow(Convert.ToInt32(textBox2.Text), 2) - 4 * Convert.ToInt32(textBox1.Text) * Convert.ToInt32(textBox3.Text)).ToString();
}
Программа находит корни квадратного уравнения.
+116
private void label1_Click(object sender, EventArgs e)
{
MessageBox.Show("Данная программа вычисляет\nнаибольший общий делитель.");
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
if (Convert.ToInt32(textBox1.Text) >= Convert.ToInt32(textBox2.Text))
{
for (int i = Convert.ToInt32(textBox1.Text); i > 0; i--)
{
if (Convert.ToInt32(textBox1.Text) % i == 0)
{
if (Convert.ToInt32(textBox2.Text) % i == 0)
{
label2.Text = "НОД = " + Convert.ToString(i);
break;
}
}
}
}
else
for (int i = Convert.ToInt32(textBox2.Text); i > 0; i--)
{
if (Convert.ToInt32(textBox2.Text) % i == 0)
{
if (Convert.ToInt32(textBox1.Text) % i == 0)
{
label2.Text = "НОД = " + Convert.ToString(i);
break;
}
}
}
}
Программа с одного форума
+74
for (Tm_RecipientConstructor recipient: m_Recipients) {
Tm_PHB_Contact m_Contact = recipient.getContact();
if ( m_Contact != null) {
if(m_Contact.getMobile()!=null) {
st.setLong(1,recipient.getEntry().getID());//nWebEntryID
st.setLong(2,Tm_Registry.getInstance().getAttachementTypes().getID(En_AttachementType.ARGUMENT));//NTYPE
st.setString(3,"mobile");//STRNAME
st.setLong(4,Tm_Registry.getInstance().getAttributeType().getID(En_AttributeType.STRING));//NDATATYPE
st.setString(5,m_Contact.getMobile());//STRVALUE
st.addBatch();
index++;
if (index % 5000 == 0){
st.executeBatch();
st.clearBatch();
st = conn.prepareStatement(sql);
}
}
if(m_Contact.getName()!=null) {
st.setLong(1,recipient.getEntry().getID());//nWebEntryID
st.setLong(2,Tm_Registry.getInstance().getAttachementTypes().getID(En_AttachementType.ARGUMENT));//NTYPE
st.setString(3,"first_name");//STRNAME
st.setLong(4,Tm_Registry.getInstance().getAttributeType().getID(En_AttributeType.STRING));//NDATATYPE
st.setString(5,m_Contact.getName());//STRVALUE
st.addBatch();
index++;
if (index % 5000 == 0){
st.executeBatch();
st.clearBatch();
st = conn.prepareStatement(sql);
}
}
if(m_Contact.getSurName()!=null) {
st.setLong(1,recipient.getEntry().getID());//nWebEntryID
st.setLong(2,Tm_Registry.getInstance().getAttachementTypes().getID(En_AttachementType.ARGUMENT));//NTYPE
st.setString(3,"last_name");//STRNAME
st.setLong(4,Tm_Registry.getInstance().getAttributeType().getID(En_AttributeType.STRING));//NDATATYPE
st.setString(5,m_Contact.getSurName());//STRVALUE
st.addBatch();
index++;
if (index % 5000 == 0){
st.executeBatch();
st.clearBatch();
st = conn.prepareStatement(sql);
}
}
if(m_Contact.getPatrName()!=null) {
st.setLong(1,recipient.getEntry().getID());//nWebEntryID
st.setLong(2,Tm_Registry.getInstance().getAttachementTypes().getID(En_AttachementType.ARGUMENT));//NTYPE
st.setString(3,"second_name");//STRNAME
st.setLong(4,Tm_Registry.getInstance().getAttributeType().getID(En_AttributeType.STRING));//NDATATYPE
st.setString(5,m_Contact.getPatrName());//STRVALUE
st.addBatch();
index++;
if (index % 5000 == 0){
st.executeBatch();
st.clearBatch();
st = conn.prepareStatement(sql);
}
}
if(m_Contact.getCompanyName()!=null) {
st.setLong(1,recipient.getEntry().getID());//nWebEntryID
st.setLong(2,Tm_Registry.getInstance().getAttachementTypes().getID(En_AttachementType.ARGUMENT));//NTYPE
st.setString(3,"company");//STRNAME
st.setLong(4,Tm_Registry.getInstance().getAttributeType().getID(En_AttributeType.STRING));//NDATATYPE
st.setString(5,m_Contact.getCompanyName());//STRVALUE
st.addBatch();
index++;
if (index % 5000 == 0){
st.executeBatch();
st.clearBatch();
st = conn.prepareStatement(sql);
}
}
if(m_Contact.getComment()!=null) {
st.setLong(1,recipient.getEntry().getID());//nWebEntryID
st.setLong(2,Tm_Registry.getInstance().getAttachementTypes().getID(En_AttachementType.ARGUMENT));//NTYPE
st.setString(3,"comments");//STRNAME
st.setLong(4,Tm_Registry.getInstance().getAttributeType().getID(En_AttributeType.STRING));//NDATATYPE
st.setString(5,m_Contact.getComment());//STRVALUE
st.addBatch();
index++;
if (index % 5000 == 0){
st.executeBatch();
st.clearBatch();
st = conn.prepareStatement(sql);
}
}
}
}
Функции? Не, не слышал.
+146
if($this->unpriced){
//............... строк 30 кода
if($this->unpriced){
//................ строк 10 кода
}
}
Вот такую забавную проверку нашол в старом коде. Видать, для уверенности, или скорее всего логика менялась.
−83
-(void)makeItemavAilableWithName:(NSString*) name{
[[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:name];
}
-(BOOL)isItemAvaliableWithName:(NSString*) name{
//item could be a chracter or a world
return [[[NSUserDefaults standardUserDefaults] valueForKey:name]boolValue];
}
Вот так вот мы сохраняем булевые переменные в UserDefaults. Оригинальная орфография и пунктуация сохранены
+158
$uri = $_SERVER["REQUEST_URI"];
// получаем урл и выбираем id
preg_match('![?|&]p=(.*)$!',$uri,$r);
@$_GET['p'] = $r[1];
+125
#include <stdio.h>
#define MAXLINE 1000 /* максимальная длина строки в потоке */
int getline(char line[], int maxline);
main()
{
int len; /* длина текущей строки */
char line[MAXLINE]; /* текущая введённая строка */
while((len = getline(line, MAXLINE)) != (-1))
printf("%s", line);
system("PAUSE");
return 0;
}
/* getline: считывает строку в s, удаляет пробелы и знаки табуляции в конце строки, возвращает её длину. Удаляет полностью пустые строки */
getline(char s[], int lim)
{
int c, i;
for(i = 0; i < lim - 1 && (c = getchar()) != EOF && c != '\n'; ++i)
s[i] = c;
if (c == EOF)
return (-1); /* конец ввода */
else if (c == '\n') {
while(s[i-1] == ' ' || s[i-1] == '\t') /* "удаление" пробелов и знаков табуляции в конце строки */
--i;
if (i > 0) { /* если строка непустая */
s[i] = '\n';
++i;
}
s[i] = '\0';
return i;
}
}
Задача: убирать в конце каждой строки лишние пробелы и знаки табуляции, удалять полностью пустые строки.
Решение: при считывании строки вида "abc_____\n" на выходе получаем массив символов "abc\n\0___" (пробелы в конце). Печатаем строки по мере поступления, профит.
Говнокод или нормально?
+961
private class LinkedAction
{
public Action<Action<bool>> Action { get; set; }
public LinkedAction Next { get; set; }
public void Execute()
{
Action(s =>
{
if (s && Next != null) Next.Execute();
});
}
}
private static LinkedAction NewLinkedAction(LinkedAction link, Action<Action<bool>> action)
{
return new LinkedAction
{
Action = action,
Next = link
};
}
var action = GetCopytoTestActions(parameter)
.Reverse()
.Aggregate<Action<Action<bool>>, LinkedAction>(null, NewLinkedAction);
action.Execute();