- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
bool XIsEmptyString( LPCTSTR str )
{
CString s(str);
s.TrimLeft();
s.TrimRight();
return ( s.IsEmpty() || s == _T("") );
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+56
bool XIsEmptyString( LPCTSTR str )
{
CString s(str);
s.TrimLeft();
s.TrimRight();
return ( s.IsEmpty() || s == _T("") );
}
Кажется разработчика настиг приступ паранойи.
Взято из библиотека XMLite
+56
` enum SearchFlag
{
IgnoreCase = 0x00000001, ///< Case differences are ignored
- WholeWorlds = 0x00000002 ///< Only whole words are matched
+ WholeWords = 0x00000002 ///< Only whole words are matched
};
очепятка + копи-паста = world domination.
http://lists.freedesktop.org/archives/poppler/2015-January/011251.html
http://cgit.freedesktop.org/poppler/poppler/commit/?id=78abf540057181b708c546aee421f81a1dd5 8331
+59
if ( number % 10 == 0 ) {
number %= 10;
}
мне кажется, или...
+76
if ( !log.append(log_line) )
log.append("Can't append to log");
Безумие, оно рядом.
+53
int s = 0;
string N;
getline(cin, N);
// Прости господи
for (int i = 0; i < N.length(); i++)
if (N[i] != 0)
s += N[i] - 48;
Глянул свой недавний код
+58
#include <fstream>
#include <string.h>
#include <stdlib.h>
#include <iostream>
typedef unsigned int uint;
std::string sMsg;
int GetShift()
{
int iResult = 0;
for(uint i = 0; i < sMsg.size(); i++)
{
if(!isalpha(sMsg[i])) continue;
if(isupper(sMsg[i]))
{
iResult = int(sMsg[i]) - int('A');
break;
}
else if(islower(sMsg[i]))
{
iResult = int(sMsg[i]) - int('a');
break;
}
}
return iResult;
}
int Pos(const char* _Str, char _Ch)
{
int i = 0;
while(*_Str)
{
if(*_Str == _Ch)
{
return i;
}
_Str++;
i++;
}
return -1;
}
int main()
{
std::ifstream fin("input.txt");
std::ofstream fout("output.txt");
std::getline(fin, sMsg);
int iShift = GetShift();
if(iShift == 0)
{
fout << sMsg;
}
else
{
char* szOriginal = (char*)malloc(100);
strcpy(szOriginal, "ABCDEFGHIJKLMNOPQRSTUVWXYZ");
char* szShift = (char*)malloc(100);
strcpy(szShift, "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ");
szShift += iShift;
char* szOriginalL = (char*)malloc(100);
strcpy(szOriginalL, "abcdefghijklmnopqrstuvwxyz");
char* szShiftL = (char*)malloc(100);
strcpy(szShiftL, "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
szShiftL += iShift;
for(int i = 0; i < sMsg.size(); i++)
{
if(!isalpha(sMsg[i]))
fout << sMsg[i];
else
{
if(isupper(sMsg[i]))
{
int iPos = Pos(szShift, sMsg[i]);
fout << *(szOriginal + iPos);
}
else if(islower(sMsg[i]))
{
int iPos = Pos(szShiftL, sMsg[i]);
fout << *(szOriginalL + iPos);
}
}
}
free(szOriginal);
free(szShift);
free(szOriginalL);
free(szShiftL);
}
fin.close();
fout.close();
return 0;
}
В рамках подготовки к прошедшей областной олимпиаде по информатике среди школьников Минской области решал задачи. Данный говнокод решение задачи про шифр цезаря (данная задача была на областной олимпиаде в 2013 - 2014 учебном году).
Задача: расшифровать строку, которая зашифрована шифром Цезаря, так, чтобы полученная расшифровка была минимальна лексикографически.
Зашифрованная строка находится в файле input.txt, результат надо было вывести output.txt
+50
namespace Memory
{
#include <malloc.h>
}
+50
else if ( pTemp->flags & FTENT_SPIRAL )
{
float s, c;
s = sin( pTemp->entity.baseline.origin[2] + fastFreq );
c = cos( pTemp->entity.baseline.origin[2] + fastFreq );
pTemp->entity.origin[0] += pTemp->entity.baseline.origin[0] * frametime + 8 * sin( client_time * 20 + (int)pTemp );
pTemp->entity.origin[1] += pTemp->entity.baseline.origin[1] * frametime + 4 * sin( client_time * 30 + (int)pTemp );
pTemp->entity.origin[2] += pTemp->entity.baseline.origin[2] * frametime;
}
entity.cpp из cl_dlls от xash. Предположительно унаследовано от half-life sdk. На 64 битах сборка разумеется падает.
Что они пытались сделать?
За запихивание указателя под синус имхо надо запихивать указатель в анус.
+54
((Dialog*)parent)->getSquareStorage()->at(((Dialog*)parent)->getSquareStorage()->size() / 2)->setColor(0,0,0);
Qt. Я естественно сразу же переписал этот шлак
+54
// Блок кода с выходом по break
#define BLOCK for (int _count = 1; _count--;)
bool Result::commit()
{
BLOCK {
mysql_query(db->mysql, "BEGIN");
if (!saveBasePart())
break;
if (getCategory() != NULL) {
if (!saveCustomValues())
break;
}
mysql_query(db->mysql, "COMMIT");
return true;
}
mysql_query(db->mysql, "ROLLBACK");
return false;
}