-
+135.2
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
inline void clearbufshort (void *buff, unsigned int count, WORD clear)
{
if (!count)
return;
SWORD *b2 = (SWORD *)buff;
if ((int)b2 & 2)
{
*b2++ = clear;
if (--count == 0)
return;
}
do
{
*b2++ = clear;
} while (--count);
}
Наткнулся на такой вот шедевр в коде ZDaemon. Это аналог memset, только заполняет не байтами, а словами.
Кстати, там же рядом есть функция, запполняющая двойными словами:
inline void clearbuf (void *buff, int count, SDWORD clear)
{
SDWORD *b2 = (SDWORD *)buff;
while (count--)
*b2++ = clear;
}
Arseniy,
13 Февраля 2010
-
+137.6
- 1
w = (GtkWidget*)(*((int*)(lw->data)));
Объект для медитаций
mutanabbi,
13 Февраля 2010
-
+68.1
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
void TInputTID::AvWnd(GtkWidget* w, char* name, int bOut, void (*cb) (int wnd, int data))
{
// Тут объявления локальных переменных и не относящиеся к делу манипуляции
if(((int)cb) != -1) // Шедевр
{
gtk_signal_connect ((GtkObject*)hButOK,
"clicked",GTK_SIGNAL_FUNC(cb),hOutWndBox);
}
}
Вечное сияние чистого разума. Новое слово в арифметике указателей.
mutanabbi,
13 Февраля 2010
-
−112.9
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
NSString *s_diskUsage = [NSString localizedStringWithFormat:@"Unavailable"];;
float f_vaultUsage = 0;
if (inData == NULL || inData.loggedIn != 0)
{
[s_diskUsage release];
s_diskUsage = [NSString localizedStringWithFormat:@"Unavailable"];
f_vaultUsage = (float)0;
}
Продолжение эпопеи с проектом на Objective-C. Я не знаю, может это стандарт кодирования такой, когда нужно как можно чаще переинициализировать переменные одними и теми же значениями... на случай если им надоест и они самоуничтожатся...
Highlander,
13 Февраля 2010
-
−357.8
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
-(bool)hasInternetConnection
{
return true;
}
-(void)checkInternetConnection
{
NSLog(@"checking connection");
mTmp.loggedIn = ([self hasInternetConnection]==YES) ? 0 : -1;
}
Мой начальник-тимлид, американский индус по происхождению, узнав, что я уже несколько часов потратил на попытки неизвращенной реализации нужного нам "простого" функционала, сказал, что поможет мне, хоть я и не просил.
Уже через несколько минут я увидел у себя вот эти строки...
P.S. если кто не знает, то код на Objective-C
Highlander,
13 Февраля 2010
-
+162.5
- 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
$s_name=$_POST['s_name'];
$f_name=$_POST['f_name'];
$m_name=$_POST['m_name'];
$login=$_POST['login'];
$password1=$_POST['password1'];
$password2=$_POST['password2'];
$post_id=$_POST['post'];
$query="SELECT person.login as login FROM person ORDER BY ID";
$res=Select($query);
$flag=false;
While(OCIFetch($res))
{
$login_base=text($res,'LOGIN');
if ($login==$login_base)
{
$flag=true;
break;
}
}
If($flag)
{
echo "</br><center><h3>Такой логин уже существует...придумайте еще что-нибудь!</center></h3></br>";
?>
<center><h4><a href="index.php?menu=reg">Назад</a></h4><center>
<?
}
if (!$flag)
{
if ($password1==$password2)
{
If (($login!='') and ($password1!='') and ($s_name!='') and ($f_name!='') and ($m_name!=''))
{
.... Ну и дальше добавение и все такое))
ммм.. альтернативные способы защиты от инъекций в запросах???)))
1_and_0,
12 Февраля 2010
-
+153.6
- 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
var xmlhttp
var dlid;
function showHint(id)
{
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Your browser does not support XMLHTTP!");
return;
}
dlid="dl"+id;
var url="download.php";
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url+"?update="+id,false);
xmlhttp.send(null);
window.location=url+"?id="+id;
}
function stateChanged()
{
if (xmlhttp.readyState==4)
{
document.getElementById(dlid).innerHTML=xmlhttp.responseText;
}
}
function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
// code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
}
Разбираюсь с AJAX
ko4epblzka,
12 Февраля 2010
-
+137.5
- 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
void TWindowTID::SetStyle(GtkWidget* widget, const char *form, gint Red_, gint Green_, gint Blue_)
{
struct _GtkStyle *style;
GdkColor bg;
style=gtk_style_new();
bg.red = Red_;
bg.blue = Blue_;
bg.green = Green_;
if (form=="TEXT")
{
style->fg[GTK_STATE_NORMAL]=bg; //TEXT
}
else
if (form=="BORDER")
{
style->base[GTK_STATE_NORMAL]=bg; //BORDER
}
else
if (form=="ALL")
{
style->bg[GTK_STATE_NORMAL]=bg;
style->base[GTK_STATE_NORMAL]=bg; //BORDER
style->fg[GTK_STATE_NORMAL]=bg; //TEXT
}
else
if (form=="button")
{
style->bg[GTK_STATE_PRELIGHT]=bg;
style->base[GTK_STATE_PRELIGHT]=bg; //BORDER
style->bg[GTK_STATE_SELECTED]=bg;
style->base[GTK_STATE_SELECTED]=bg; //BORDER
}
else
{
style->bg[GTK_STATE_NORMAL]=bg;
}
style->font = gdk_font_load("-adobe-helvetica-*-r-*-*-12-*-*-*-*-*-*-*");
if ((GtkWidget *)widget!=NULL) gtk_widget_set_style((GtkWidget *)widget, style);
}
Сравнение строк умиляет
mutanabbi,
12 Февраля 2010
-
+107.2
- 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
procedure TFormMoneyToBag.AMEditVirtualKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
Field : string;
Value : integer;
begin
if (Key = 16) or (Key = 13) then begin
with ADOHardCash.FieldByName('Dengi') do begin
if AsString = '500 грн' then Field := '[500hrn]'
else if AsString = '200 грн' then Field := '[200hrn]'
else if AsString = '100 грн' then Field := '[100hrn]'
else if AsString = '50 грн' then Field := '[50hrn]'
else if AsString = '20 грн' then Field := '[20hrn]'
else if AsString = '10 грн' then Field := '[10hrn]'
else if AsString = '5 грн' then Field := '[5hrn]'
else if AsString = '2 грн' then Field := '[2hrn]'
else if AsString = '1 грн' then Field := '[1hrn]'
else if AsString = '1 грн монета' then Field := '[1hrnCoin]'
else if AsString = '50 коп' then Field := '[50kopCoin]'
else if AsString = '25 коп' then Field := '[25kopCoin]'
else if AsString = '10 коп' then Field := '[10kopCoin]'
else if AsString = '5 коп' then Field := '[5kopCoin]'
else if AsString = '2 коп' then Field := '[2kopCoin]'
else if AsString = '1 коп' then Field := '[1kopCoin]'
end;
UpdateIncassationCurrentValue.Parameters.ParamByName('@IncassationId').Value := IncassationId;
UpdateIncassationCurrentValue.Parameters.ParamByName('@Field').Value := Field;
if AMEditVirtual.Text = '' then Value := 0 else Value := StrToInt(AMEditVirtual.Text);
UpdateIncassationCurrentValue.Parameters.ParamByName('@Value').Value := Value;
ExecStoredProc(UpdateIncassationCurrentValue);
RequeryADO(ADOHardCash);
RequeryADO(ADOCashDeskInfo);
ButtonStatus;
AMEditVirtual.Visible := false;
end;
end;
Сие Чудо техники заполняет параметры для выполнения хранимой процедуры на сервере.
Написал Большой Мудила, хотя в целом он хороший человек.
cruelwizard,
12 Февраля 2010
-
+147
- 1
- 2
- 3
- 4
final public function getModelId()
{
return '42';
}
e-one,
12 Февраля 2010