- 1
- 2
- 3
- 4
- 5
- 6
bool IsDigit(char cKey, const char *cKeys) {
for (int i = 0; i < strlen(cKeys); i++)
if (cKeys[i] == cKey)
return true;
return false;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1001
bool IsDigit(char cKey, const char *cKeys) {
for (int i = 0; i < strlen(cKeys); i++)
if (cKeys[i] == cKey)
return true;
return false;
}
+1001
void Object::destroy ()
{
evas_object_del (o);
// do a suicide as the delete operator isn't public available
// the reason is that the C design below is a suicide design :-(
//delete (this); // TODO: why does this make problems sometimes???
}
source: trunk/BINDINGS/cxx/elementaryxx/src/Object.cpp @ 65926
+1001
bool f = true;
short c0 = a0, c1 = a1, c2 = a2, c3 = a3;
if (a0 < c1) { f = false; a0 = c1; a1 = c0 - c1; a2 = c1 - c2; a3 = c1 - c3; }
if (a0 < c2) { f = false; a0 = c2; a1 = c2 - c1; a2 = c0 - c2; a3 = c2 - c3; }
if (a0 < c3) { f = false; a0 = c3; a1 = c3 - c1; a2 = c3 - c2; a3 = c0 - c3; }
if (f) { a0 = c0; a1 = c0 - c1; a2 = c0 - c2; a3 = c0 - c3; }
Чувак не знает про else / else if. :(
+1001
// Функция регистрирующая ошибку
VOID SetError(DWORD dwError)
{
CHAR szErr[256];
sprintf(szErr, "%lu", dwError);
SetEnvironmentVariable("0xdeadc0de", szErr);
}
// Шеллкод
__declspec(dllexport)
VOID WINAPI Shell(REMSTART *pCtx)
{
pCtx->pLoadLibraryA(pCtx->sz);
CHAR szVar[] = {'0','x','d','e','a','d','c','0','d','e','\0'};
CHAR szErr[256];
if (!pCtx->pGetEnvironmentVariableA(szVar, szErr, sizeof(szErr)))
pCtx->pExitThread(ERROR_LOAD_HOOK_DLL);
DWORD dwError = 0;
for (DWORD i = 0; szErr[i]; i++)
{
dwError *= 10;
dwError += szErr[i] - '0';
}
pCtx->pExitThread(dwError);
}
Удивительнейший способ регистрации ошибок в функции DllMain при инжекте библиотеки шеллкодом из другого процесса (кто знает - тот поймет)... линк: http://www.wasm.ru/forum/viewtopic.php?id=43291
+1001
QStringList list;
QStringList::iterator i, j;
//...
i = qLowerBound(list.begin(), list.end(), value);
j = qUpperBound(list.begin(), list.end(), value);
while (i != j) {
processItem(*i);
++i;
}
Пахучее пятнышко из брошюры "Qt 4's Generic Algorithms"
+1001
Matrix Matrix::inverse ()
{
Matrix Temp;
Matrix A;
Matrix AL(4,4);
int c1,c2;
for (int i = 0; i < 5; i++)
for (int j = 0; j < 5; j++)
{
c1 = 0;
for (int k = 0; k < 5; k++)
{
if (k == i) continue;
c2 = 0;
for (int l = 0; l < 5; l++)
{
if (l == j) continue;
AL[c1][c2] = array[k][l];
c2++;
}
c1++;
}
A[i][j] = pow(-1,static_cast<double>(i + j + 2))*AL.determinant();
}
for (int i = 0; i < 5; i++)
for (int j = 0; j < 5; j++)
{
Temp[i][j] = 1/determinant()*A[i][j];
}
return Temp;
}
цените, алгоритм обратной матрицы
+1001
string GetStringHash(string S)
{
MD5 md = MD5.Create();
byte[] B = md.ComputeHash(Encoding.UTF8.GetBytes(S));
return string.Format("{0}{1}{2}{3}{4}{5}{6}{7}{8}{9}{10}{11}{12}{13}{14}{15}",
B[0x00], B[0x01], B[0x02], B[0x03], B[0x04], B[0x05], B[0x06], B[0x07],
B[0x08], B[0x09], B[0x0A], B[0x0B], B[0x0C], B[0x0D], B[0x0E], B[0x0F]);
}
Запостил: 4eburashka, прямо перед выпилом ресурса.
+1001
struct Dir {
Dir(const char* name) {
d = opendir("/var/log");
}
~Dir();
const char* next();
bool operator== (DIR* other);
private:
DIR* d;
};
...
Dir var_log("/var/log");
+1001
struct Node{
char* d;
Node *left;
Node *right;
};
Node* search_insert(Node *root, char* d){
/*.........*/
Node *pnew = new Node;
pnew->d = d
/*.........*/
}
int main(){
/*.........*/
Node *root=NULL;
char* r=new char;
for (int i = 0; i<10; i++){
scanf("%s", r);
root=search_insert(root, b[i]);
}
/*.........*/
}
Вот такой тупой недочет стоил мне туевой хучи времени. Не единожды стирал все и писал заново. Просветление пришло на третий день.
Указатель.... поле в структуре - указатель... указатель в который я раз за разом лезу в цикле...
+1000
clearChild = (clearChild === false) ? false : true;
Разбирался в коде на проекте и нашел вот такое :)