- 1
#define SOME_MACRO_NAME 4 /* 1 */
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+127
#define SOME_MACRO_NAME 4 /* 1 */
−168
-- Процедура формирования таблицы анализа по FIR
CREATE PROCEDURE KojevnikovFir
@DateFo varchar(10),
@DateTo varchar(10)
AS DECLARE @Polet int, @ProcPolet numeric(4,2)
-- определяю кол-во выполненных рейсов в диапазоне дат----
SET @Polet = (SELECT DISTINCT Count(ID) FROM PPLS WHERE
( ( FLI_ENTRY=1 or FLI_EXIT=1 ) or (DEP=1 and DEP_AERODROME like'UK%' ) or
(ARR=1 and DEST_AERODROME Like'UK%') ) and (ENTRY_TIME >=@DateFo and ENTRY_TIME <=@DateTo))
----------- Начало формирования таблицы FIR-------------------
-- Создаем SCROLL курсор 1 для чтения
DECLARE Cursor_All_Pol CURSOR SCROLL KEYSET TYPE_WARNING FOR SELECT Marsrut,All_Polet
FROM Marsr_All_Pol FOR READ ONLY
-- Открытие курсора 1 и наполнение его данными
OPEN Cursor_All_Pol DECLARE @Marsrut char(11), @All_Polet int,@Count1 int,@Count1_end int
SET @Count1=1 SET @Count1_end = @@CURSOR_ROWS
-- ===========обьявляю и заполняю курсор по 2 таблице==============
DECLARE Cursor_Air CURSOR SCROLL KEYSET TYPE_WARNING
FOR SELECT Marsrut,TYPE_AIRCRAFT,kol_TypeAir FROM Marsr_kol_Air FOR READ ONLY
-- Открытие курсора 2 и наполнение его данными
OPEN Cursor_Air
DECLARE @MarsrutAir char(11),@Type nvarchar(4), @Air_Polet int,@Count2 int,@Count2_end int
SET @Count2 = 0 SET @Count2_end = @@CURSOR_ROWS
-- ===========обьявляю и заполняю курсор по 3 таблице==============
DECLARE Cursor_AK CURSOR SCROLL KEYSET TYPE_WARNING
FOR SELECT Marsrut,ICAO,AK,kol_AK FROM dbo.Marsr_kol_AK FOR READ ONLY
-- Открытие курсора 2 и наполнение его данными
OPEN Cursor_AK
DECLARE @MarsrutAK char(11),@ICAO char(3),@AK varchar(60),@kol_AK int,@Count3 int,@Count3_end int
SET @Count3 = 0 SET @Count3_end = @@CURSOR_ROWS
-- цикл по первому курсору
WHILE @Count1 < @Count1_end BEGIN
-- на 1 запись курсора 1
FETCH NEXT FROM Cursor_All_Pol INTO @Marsrut, @All_Polet
-- вставляю строку маршрута и кол-ва полетов в таблицу
SET @ProcPolet = ((@All_Polet * 100)/@Polet)
INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
VALUES (@Marsrut,@All_Polet,@ProcPolet,null,null,null,null,null)
SET @Count1 = @Count1 + 1
-- цикл по второму курсору
FETCH FIRST FROM Cursor_Air INTO @MarsrutAir,@Type,@Air_Polet
SET @Count2 = 1
-- Формирую 1 строку маршрут + ВС
IF @Marsrut = @MarsrutAir BEGIN
INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
VALUES (null,null,null,@Type,@Air_Polet,null,null,null)
END --IF
WHILE @Count2 < @Count2_end BEGIN
-- увеличиваю счетчик курсора 2
FETCH NEXT FROM Cursor_Air INTO @MarsrutAir,@Type,@Air_Polet
-- Формирую строку маршрут + ВС
IF @Marsrut = @MarsrutAir BEGIN
INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
VALUES (null,null,null,@Type,@Air_Polet,null,null,null)
END --IF
-- закрываю цикл WHILE 2 (второй курсор)
SET @Count2 = @Count2 + 1
END
-- цикл по третьему курсору
FETCH FIRST FROM Cursor_AK INTO @MarsrutAK,@ICAO,@AK,@kol_AK
SET @Count3 = 1
-- Формирую 1 строку маршрут + АК
IF @Marsrut = @MarsrutAK BEGIN
INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
VALUES (null,null,null,null,null,@ICAO,@AK,@kol_AK)
END --IF
WHILE @Count3 < @Count3_end BEGIN
-- увеличиваю счетчик курсора 3
FETCH NEXT FROM Cursor_AK INTO @MarsrutAK,@ICAO,@AK,@kol_AK
-- Формирую строку маршрут + ВС
IF @Marsrut = @MarsrutAK BEGIN
INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
VALUES (null,null,null,null,null,@ICAO,@AK,@kol_AK)
END --IF
-- закрываю цикл WHILE 2 (второй курсор)
SET @Count3 = @Count3 + 1
END
-- закрываю цикл WHILE 1 (первый курсор)
END
-- Закрываю курсор 2
CLOSE Cursor_Air
-- Удаляю курсор 1 как обьект
DEALLOCATE Cursor_Air
-- Закрываю курсор 3
CLOSE Cursor_AK
-- Удаляю курсор 1 как обьект
DEALLOCATE Cursor_AK
-- Закрываю курсор
CLOSE Cursor_All_Pol
-- Удаляю курсор 1 как обьект
DEALLOCATE Cursor_All_Pol
------------Конец--------------------
GO
select * from KojevnikovAnalizFIR
truncate table dbo.KojevnikovAnalizFIR
DELETE from KojevnikovAnalizFIR
exec dbo.KojevnikovFir '2004-01-01','2004-01-05'
курсор головного мозга 2.1
+136
//...
float a = 7;
printf("%d", *(unsigned int *)(&a) >> 23);
// Что напечатает?
//...
На экзамене как-то задали такой вопрос. А ну-ка, кто без компилятора ответит?
+59
#ifndef PORT_H_
#define PORT_H_
#define MAKE_PORT(portName, ddrName, pinName, className, ID) \
class className{\
public:\
typedef uint8_t DataT; /* Alias for the type of data port*/\
private:\
static volatile DataT &data()\
{\
return portName;\
}\
static volatile DataT &dir()\
{\
return ddrName;\
}\
static volatile DataT &pin()\
{\
return pinName;\
}\
public:\
static void Write(DataT value) /*Write value to port PORT = value*/\
{\
data() = value;\
}\
static void ClearAndSet(DataT clearMask, DataT value) /*Clear by mask and set PORT = (PORT & ~clearMask) | value */\
{\
data() = (data() & ~clearMask) | value;\
}\
static DataT Read() /*Read the value written to the port*/\
{\
return data();\
}\
static void DirWrite(DataT value)/*Record the value of the direction of the lines I/O */\
{\
dir() = value;\
}\
static DataT DirRead() /*Read the value of the direction of the lines I/O */\
{\
return dir();\
}\
static void Set(DataT value) /*Set bits in the port PORT |= value;*/\
{\
data() |= value;\
}\
static void Clear(DataT value) /*Clear bits in the port PORT &= ~value;*/\
{\
data() &= ~value;\
}\
static void Togle(DataT value) /*Switch bits PORT ^= value;*/\
{\
data() ^= value;\
}\
static void DirSet(DataT value) /*Set direction bits*/\
{\
dir() |= value;\
}\
static void DirClear(DataT value) /*Clear direction bits*/\
{\
dir() &= ~value;\
}\
static void DirTogle(DataT value)\
{\
dir() ^= value;\
}\
static DataT PinRead()\
{\
return pin();\
}\
enum{Id = ID};\
enum{Width=sizeof(DataT)*8};/*Bit depth*/\
};
#ifdef PORTA
MAKE_PORT(PORTA, DDRA, PINA, Porta, 'A');
#endif
#ifdef PORTB
MAKE_PORT(PORTB, DDRB, PINB, Portb, 'B');
#endif
#ifdef PORTC
MAKE_PORT(PORTC, DDRC, PINC, Portc, 'C');
#endif
#ifdef PORTD
MAKE_PORT(PORTD, DDRD, PIND, Portd, 'D');
#endif
#endif /* PORT_H_ */
Использование СИ++ в микроконтроллерах доставляет....
+115
for (int i = 0; i < 40; i++)
{
GC.Collect();
}
чтоб наверняка :))
+43
/*
* encoding.cpp
*
* Created on: Oct 25, 2012
* Author: root
*/
+91
function TDuel.getFieldStr(p1: ansistring; p2: ansistring; p3: ansistring = ''): ansistring;
begin
Result := '';
if p1 = 'p1' then begin
if p2 = 'attack' then begin
if p3 = '' then Result := p1attack;
if p3 = '1' then Result := p1attack1;
end;
if p2 = 'defend' then begin
Result := p1defend;
end;
end;
if p1 = 'p2' then begin
if p2 = 'attack' then begin
if p3 = '' then Result := p2attack;
if p3 = '1' then Result := p2attack1;
end;
if p2 = 'defend' then begin
Result := p2defend;
end;
end;
end;
function TDuel.getFieldInt(p1: ansistring; p2: ansistring; p3: ansistring = ''): integer;
begin
if p1 = 'player' then begin
if p2 = '1' then Result := player1;
if p2 = '2' then Result := player2;
end;
if p1 = 'p' then begin
if p2 = '1' then begin
if p3 = 'dmg' then Result := p1dmg;
end;
if p2 = '2' then begin
if p3 = 'dmg' then Result := p2dmg;
end;
end;
end;
procedure TDuel.updFieldInt(p1: ansistring; p2: ansistring; value: integer);
begin
if p1 = 'p1' then begin
if p2 = 'dmg' then p1dmg := p1dmg + value;
end;
if p1 = 'p2' then begin
if p2 = 'dmg' then p2dmg := p2dmg + value;
end;
end;
Вот такой шедевр программерской мысли остался в коде сервера браузерки от первых девелоперов. Я так и не распарсил пока, что он делает-)
+171
if($pos === false){
$true = true;
}
else{
$true = false;
}
if($true){ /* тут код */ }
Просто оставлю это здесь.
+2
void KateQuickOpen::update () {
// пропущено
QModelIndex idxToSelect;
int linecount = 0;
QMapIterator<qint64, KTextEditor::View *> i2(sortedViews);
while (i2.hasNext()) {
i2.next();
KTextEditor::Document *doc = i2.value()->document();
if (alreadySeenDocs.contains(doc))
continue;
alreadySeenDocs.insert (doc);
QStandardItem *itemName = new QStandardItem(doc->documentName());
itemName->setData(qVariantFromValue(QPointer<KTextEditor::Document> (doc)), DocumentRole);
itemName->setData(QString("%1: %2").arg(doc->documentName()).arg(doc->url().pathOrUrl()), SortFilterRole);
itemName->setEditable(false);
QFont font = itemName->font();
font.setBold(true);
itemName->setFont(font);
QStandardItem *itemUrl = new QStandardItem(doc->url().pathOrUrl());
itemUrl->setEditable(false);
base_model->setItem(linecount, 0, itemName);
base_model->setItem(linecount, 1, itemUrl);
linecount++;
if (!doc->url().isEmpty() && doc->url().isLocalFile())
alreadySeenFiles.insert (doc->url().toLocalFile());
// select second document, that is the last used (beside the active one)
if (linecount == 2)
idxToSelect = itemName->index();
}
// get all open documents
QList<KTextEditor::Document*> docs = Kate::application()->documentManager()->documents();
foreach(KTextEditor::Document *doc, docs) {
// skip docs already open
if (alreadySeenDocs.contains (doc))
continue;
QStandardItem *itemName = new QStandardItem(doc->documentName());
itemName->setData(qVariantFromValue(QPointer<KTextEditor::Document> (doc)), DocumentRole);
itemName->setData(QString("%1: %2").arg(doc->documentName()).arg(doc->url().pathOrUrl()), SortFilterRole);
itemName->setEditable(false);
QFont font = itemName->font();
font.setBold(true);
itemName->setFont(font);
QStandardItem *itemUrl = new QStandardItem(doc->url().pathOrUrl());
itemUrl->setEditable(false);
base_model->setItem(linecount, 0, itemName);
base_model->setItem(linecount, 1, itemUrl);
linecount++;
if (!doc->url().isEmpty() && doc->url().isLocalFile())
alreadySeenFiles.insert (doc->url().toLocalFile());
}
// insert all project files, if any project around
if (Kate::PluginView *projectView = m_mainWindow->mainWindow()->pluginView ("kateprojectplugin")) {
QStringList projectFiles = projectView->property ("projectFiles").toStringList();
foreach (const QString &file, projectFiles) {
// skip files already open
if (alreadySeenFiles.contains (file))
continue;
QFileInfo fi (file);
QStandardItem *itemName = new QStandardItem(fi.fileName());
itemName->setData(qVariantFromValue(KUrl::fromPath (file)), UrlRole);
itemName->setData(QString("%1: %2").arg(fi.fileName()).arg(file), SortFilterRole);
itemName->setEditable(false);
QFont font = itemName->font();
font.setBold(true);
itemName->setFont(font);
QStandardItem *itemUrl = new QStandardItem(file);
itemUrl->setEditable(false);
base_model->setItem(linecount, 0, itemName);
base_model->setItem(linecount, 1, itemUrl);
linecount++;
}
}
// swap models and kill old one
m_model->setSourceModel (base_model);
delete m_base_model;
m_base_model = base_model;
// пропущено
}
Адская копипаста. У меня мозг сегфолтится при попытке ее формализировать.
https://projects.kde.org/projects/kde/applications/kate/repository/revisions/master/entry/kate/app/katequickopen.cpp#L135
−120
Option Explicit
Dim HTMLCode As String 'переменная для хранения кода страницы
Private Sub Command1_Click()
Winsock1.RemotePort = 80 'устанавливаем порт сервера 80
Winsock1.RemoteHost = "ippages.com" 'Хост
Winsock1.Connect 'Подключаемся
Label4.Caption = Winsock2.LocalIP
End Sub
Function CutIP(HTML As String) As String
Dim p1 As Integer
p1 = InStr(HTML, "Content-Type: text/html")
CutIP = Trim(Mid(HTML, p1 + 27, Len(HTML) - p1 - 23))
End Function
Private Sub Label1_Click()
End Sub
Private Sub Winsock1_Close() 'Событие генерируется при закрытии Канала связи
Form1.Caption = "Не подключен" 'Просто сообщаем о том что не подключены
Winsock1.Close
End Sub
Private Sub Winsock1_Connect() 'Событие генерируется при подключении
Form1.Caption = "Подключение" 'Подключены
'Посылаем запрос на сервер выдающему наш IP
Winsock1.SendData "GET " + "/simple/" + " HTTP/1.0" + Chr(10) + Chr(10)
End Sub
'Событие генерируется когда нам приходят данные
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Temp As String
Winsock1.GetData HTMLCode
Label1.Caption = CutIP(HTMLCode)
End Sub
Получение ай-пи адреса посредством отправки на сайт запроса через компонент WinSock.
http://vbbook.ru/visual-basic/polychenie-svoego-ip/
Строго говоря, это не лажа кодера, просто используется (по незнанию?) очень глючный и непредсказуемый компонент.
Fixed by me:
Function GetCurrentIP() As String
Dim txt As String
Dim i, j As Integer
Dim mshttp As New XMLHTTP 'по умолчанию сервер всегда зареган.
mshttp.open "GET", "http://checkip.dyndns.org/", False ' синхронный get
mshttp.send
txt = mshttp.responseText
i = InStr(1, txt, ":")
If i > 0 Then
i = i + 1
Else
GetCurrentIP = "" ' удобно было бы, если по присваиванию, подобному этому, происходило покидание процедуры. Ан, нет.
Exit Function
End If
j = InStr(i, txt, "</")
If j < 1 Then
GetCurrentIP = ""
Exit Function
End If
GetCurrentIP = Trim(Mid(txt, i, j - i))
End Function