-
Лучший говнокод
- В номинации:
-
- За время:
-
-
+135
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
public string ExportToFile(string filename, string filepath, DataSet dsInput)
{
string sFlag = "Error";
System.IO.StreamWriter sw = new StreamWriter("");
try
{
if (filename.Trim() != "" && filepath != "" && dsInput.Tables[0].Rows.Count != 0)
{
sw = new System.IO.StreamWriter(filepath + filename + ".xls");
int iCol = dsInput.Tables[0].Columns.Count;
for (int i = 0; i < iCol; i++)
{
sw.Write(dsInput.Tables[0].Columns[i]);
if (i < iCol - 1)
{ sw.Write("\t"); }
sw.Write(sw.NewLine);
foreach (DataRow dr in dsInput.Tables[0].Rows)
{
for (int i = 0; i < iCol; i++)
{
if (!Convert.IsDBNull(dr[i]))
{
sw.Write(dr[i].ToString());
}
if (i < iCol - 1)
{ sw.Write("\t"); }
}
sw.Write(sw.NewLine);
}
sw.Close();
sFlag = "Success";
}
}
return sFlag;
}
catch (Exception)
{
return sFlag;
}
}
С какого-то китайского сайта:
http://www.datazx.cn/Forums/en-US/2d129cdc-2705-4035-90e2-063c4c399ae5/action?threadDisplayName=wpf-datagrid-remove-whitespace-from-string-on-clipboard-copy&forum=wpf
Нафиг эксепшены, лучше вернем строку "Error"! Ну или "Success", если этот чудо-код еще и не грохнется.
yamamoto,
05 Сентября 2014
-
+134
- 1
- 2
- 3
- 4
- 5
- 6
- 7
if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
goto fail;
if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
goto fail;
goto fail;
if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
goto fail;
https://www.imperialviolet.org/2014/02/22/applebug.html
Понятно, что третий if не выполнится. Кстати, это был баг в Apple SSL/TLS, привёдший к уязвимости.
Кстати, GCC с -Wall это не ловит. Ловит только Clang, и то только с -Wunreachable-code. Мораль: заключайте все тела ифов в блоки!
someone,
28 Августа 2014
-
+10
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
void MainWindow::mathFun()
{
if(stringBuffer->indexOf("pi") != -1)
{
int i = stringBuffer->indexOf("pi");
stringArg2->clear();
stringArg2->append( stringBuffer->mid(i+2, stringBuffer->size()));
stringSum->clear();
stringSum->append(QString::number(stringArg2->toDouble() * 3.1415926));
ui->lineEdit->clear();
ui->lineEdit->insert(*stringSum);
qDebug() <<" i=" << i << " size=" << stringBuffer->size();
}
if(stringBuffer->indexOf("log") != -1)
{
int i = stringBuffer->indexOf("log");
stringArg2->clear();
stringArg2->append( stringBuffer->mid(i+3, stringBuffer->size()));
stringSum->clear();
stringSum->append(QString::number(qLn(stringArg2->toDouble())));
ui->lineEdit->clear();
ui->lineEdit->insert(*stringSum);
qDebug() <<" i=" << i << " size=" << stringBuffer->size();
}
if(stringBuffer->indexOf("sqr") != -1)
{
int i = stringBuffer->indexOf("sqr");
stringArg2->clear();
stringArg2->append( stringBuffer->mid(i+3, stringBuffer->size()));
stringSum->clear();
stringSum->append(QString::number(qSqrt(stringArg2->toDouble())));
ui->lineEdit->clear();
ui->lineEdit->insert(*stringSum);
qDebug() <<" i=" << i << " size=" << stringBuffer->size();
}
if(stringBuffer->indexOf("fac") != -1)
{
int i = stringBuffer->indexOf("fac");
stringArg2->clear();
stringArg2->append( stringBuffer->mid(i+3, stringBuffer->size()));
stringSum->clear();
long long j = 1;
for(int k = 1; k <= stringArg2->toInt(); ++k)
{
if(stringArg2->toInt() == 0)
{
ui->lineEdit->insert(QString::number(0));
return;
}
j *= 1 * k;
}
stringSum->append(QString::number(j));
ui->lineEdit->clear();
ui->lineEdit->insert(*stringSum);
qDebug() <<" i=" << i << " size=" << stringBuffer->size();
}
if(stringBuffer->indexOf("pow") != -1)
{
int i = stringBuffer->indexOf("pow");
stringArg1->clear();
stringArg1->append( stringBuffer->mid(0, i));
stringArg2->clear();
stringArg2->append( stringBuffer->mid(i+3, stringBuffer->size()));
stringSum->clear();
stringSum->append(QString::number( pow(stringArg1->toDouble(), stringArg2->toDouble())));
ui->lineEdit->clear();
ui->lineEdit->insert(*stringSum);
qDebug() <<" i=" << i << " size=" << stringBuffer->size();
}
if(stringBuffer->indexOf("exp") != -1)
{
int i = stringBuffer->indexOf("exp");
stringArg2->clear();
stringArg2->append( stringBuffer->mid(i+3, stringBuffer->size()));
stringSum->clear();
stringSum->append(QString::number(exp(stringArg2->toDouble())));
ui->lineEdit->clear();
ui->lineEdit->insert(*stringSum);
qDebug() <<" i=" << i << " size=" << stringBuffer->size();
}
if(stringBuffer->indexOf("mod") != -1)
{
int i = stringBuffer->indexOf("mod");
stringArg1->clear();
stringArg1->append( stringBuffer->mid(0, i));
stringArg2->clear();
stringArg2->append( stringBuffer->mid(i+3, stringBuffer->size()));
stringSum->clear();
stringSum->append(QString::number(fmod(stringArg1->toDouble(), stringArg2->toDouble())));
ui->lineEdit->clear();
ui->lineEdit->insert(*stringSum);
qDebug() <<" i=" << i << " size=" << stringBuffer->size();
}
stringSum->clear();
stringBuffer->clear();
}
Калькулятор на C++/Qt
ConstantineVL,
24 Июня 2014
-
+149
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
(function (G) {
"use strict";
var $ = G.jQuery;
if ($ === undefined) {
G.console.log("jQuery not found.");
return;
}
function resizeContainer() {
$("div.container").outerHeight($(G).innerHeight());
}
$(G).resize(resizeContainer);
resizeContainer();
}(this));
Вот тут: http://jsfiddle.net/dunmaksim/NWN5f/3/ написал небольшой код, который позволяет сделать разметку на странице в стиле ModernUI. Высота контейнера автоматом подгоняется под высоту окна. Код прогнал через JSLint. Решение ориентировано на новые браузеры. Какие будут замечания? Замыкание использую для ограничения пространства имён.
dunmaksim,
09 Июня 2014
-
+139
- 1
- 2
Представляю Вашему вниманию новейший минусатор: http://rghost.ru/54852059
Исправлены многие ошибки предыдущих версий. Не побрезгуйте, родимые!..
Новейший минусатор для творения непотребностей с рейтингом.
brutushafens,
02 Мая 2014
-
+86
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
load 'regex'
f=: 13 : '((+./-.(1 2 3 4{y))+.(0{y))*.(5{y)'
a =: #:i.2^6
b =: f"(1) a
cc =: ":|:(|:a),(|:b)
cc1 =: (32+i.32){cc
cc2 =: (i.32){cc
ccc=:|:(|:cc2),(1 32$'*'),(|:cc1)
ccc=:('\*';'&&') rxrplc"1 (ccc)
(,&'\\ \hline')"1 (' ';' & ')rxrplc"1 (ccc)
Вот он, первый говнокод на J
Abbath,
28 Февраля 2014
-
+139
Creates the directory named by this abstract pathname.
Returns: true if and only if the directory was created; false otherwise
P.S. В java.nio сделали адекватную функцию, еще один гвоздь в крышку гроба шестерки.
bormand,
04 Февраля 2014
-
+151
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
/**
* Magic method __get()
* @param string $name The name of the payment options properties
* @return string
*/
public function &__get($name)
{
if (isset($this->_properties[$name]) && is_scalar($this->_properties[$name]))
{
$property = $this->_properties[$name];
}
else
{
$property = &$this->_properties[$name];
}
return $property;
}
dimkich,
28 Августа 2013
-
+80
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
if ( response == null || request == null ) {
return;
}
if ( request.getHeader() != null
&& request.getHeader().getChannel() != null
&& request.getHeader().getChannel().getSubChannel() != null
&& request.getHeader().getChannel().getSubChannel().getSubChannel() != null
&& request.getHeader().getChannel().getSubChannel().getSubChannel().getName() != null
&& !request.getHeader()
.getChannel()
.getSubChannel()
.getSubChannel()
.getName()
.equalsIgnoreCase( "XXX" ) ) {
if ( response.getResponseObject() != null
&& response.getResponseObject().getReservation() != null
&& response.getResponseObject().getReservation().getRate() != null
&& response.getResponseObject().getReservation().getRate().getRoom() != null
&& response.getResponseObject()
.getReservation()
.getRate()
.getRoom()
.getBedType() != null ) {
response.getResponseObject()
.getReservation()
.getRate()
.getRoom()
.setBedType( null );
}
}
Индус. Спасибо что два if'a
madhead,
03 Июля 2013
-
+13
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
class session {
public:
session(int id, boost::asio::io_service &io_service) :
id(id),
timer(io_service)
{
timer.expires_from_now(session_timeout);
timer.async_wait(boost::bind(&session::on_timeout, this, _1));
}
void on_timeout(const boost::system::error_code &error) {
if (error)
return;
std::cout << "Session timed out " << id << std::endl;
}
private:
int id;
boost::asio::deadline_timer timer;
};
std::map<boost::asio::ip::udp::endpoint, boost::shared_pointer<session> > sessions;
sessions.erase(endpoint) приводит к небольшому насилию над трупом сессии... Ничего конечно не вылетает, и никогда не сломается, но совесть мучает, неприятно пользоваться UB'ом.
bormand,
18 Марта 2013