-
+104
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
#ifdef _DEBUG
if ( !
#endif
dt_time_sprintf_current( tbuf, sizeof(tbuf), false )
#ifdef _RELEASE
;
#else
)
{
fprintf( stderr, "-- unable to get current time\n" );
}
#endif
}
#ifdef _DEBUG
;(
ilardm,
09 Февраля 2012
-
+132
- 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
#define COMMAND_MARKER '\x1B'
#define COMMAND_SET '='
#define COMMAND_XOR '^'
#define COMMAND_OR '|'
#define COMMAND_AND '&'
void usbWriteOut(uchar *data, int len)
{
while(len--) {
uchar c = *data;
buf[0] = buf[1];
buf[1] = buf[2];
buf[2] = buf[3];
buf[3] = c;
if(buf[0] == COMMAND_MARKER) {
uint8_t val = (hex2u(buf[2]) << 4) | hex2u(buf[3]);
if(buf[1] == COMMAND_SET) {
colorData = val;
}
else if(buf[1] == COMMAND_XOR) {
colorData ^= val;
}
else if(buf[1] == COMMAND_OR) {
colorData |= val;
}
else if(buf[1] == COMMAND_AND) {
colorData &= ~val;
}
}
}
}
Простой баг оказался крайне подлым!
При тестировании девайса терминалкой и чепятании команды ручками, каждый символ уходил в отдельном пакете и создавалось впечатление, что всё работает.
После чего девайс был собран с применением большого количества термоклея, так что исправление бага оказалось совершенно непростым занятием >_<
odmin,
09 Февраля 2012
-
+158
- 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
// Запрос выбрал из таблицы всё, далее цикл
for($c=$from; $c<$n_objects+$from; $c++) {
// Название ключа улыбнуло - $products[$i]['IsNotAvalible']
// формирует массив (оставлю самое интересное):
// запрос в итерации для картинки текущего товара
$foto_res = $this->connect->Query("SELECT FotoID FROM __cat_Foto WHERE ProductID='".$products[$i]['ID']."' AND Attribute='Index'");
if($this->connect->GetNRows()>0)
{
// запрос в итерации для урлы картинки текущего товара
$i_src = $this->img->ImgLink($foto_res[0]['FotoID']);
$MATR['PRODUCTS'][$mi]['INDEX_FOTO_IMG']='<img src="'.$i_src.'" alt="'.$products[$i]['Name'].'" border="0" />';
$MATR['PRODUCTS'][$mi]['INDEX_FOTO_SRC']=$i_src;
}
// бьем наверняка, а вдруг еще картинки есть?
$foto_res = $this->connect->Query("SELECT FotoID FROM __cat_Foto WHERE ProductID='".$products[$i]['ID']."' AND Attribute='Small'");
if($this->connect->GetNRows()>0)
{
// ага, точно, картинка есть, надо достать урлу
$i_src = $this->img->ImgLink($foto_res[0]['FotoID']);
$MATR['PRODUCTS'][$mi]['SMALL_FOTO_IMG']='<img src="'.$i_src.'" alt="'.$products[$i]['Name'].'" border="0" />';
$MATR['PRODUCTS'][$mi]['SMALL_FOTO_SRC']=$i_src;
}
else $img_html ='';
// ну давай еще разок, нам запросом меньше, запросом больше не принципиально уже
$foto_res = $this->connect->Query("SELECT FotoID FROM __cat_Foto WHERE ProductID='".$products[$i]['ID']."' AND Attribute='Large'");
if($this->connect->GetNRows()>0)
{
// ну ты смотри, еще картинку нашло, давай ка урлу к ней достанем
$MATR['PRODUCTS'][$mi]['LARGE_FOTO_IMG']='<img src="'.$this->img->ImgLink($foto_res[0]['FotoID']).'" alt="'.$products[$i]['Name'].'" border="0" />';
}
else $img_html ='';
}
И вот такая она ВСЯ, то что я привел, это только формирование блочка популярных товаров.
Если вам понравится - буду веселить дальше, там еще мноого всего )))
deep,
09 Февраля 2012
-
+1014
- 1
- 2
- 3
- 4
- 5
#ifndef _WIN32
std::ostream * dpOutputStream;
#else
ostream * dpOutputStream;
#endif
делаем код портабельным.
Dummy00001,
08 Февраля 2012
-
+1003
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
class fileOutStream : public ostream
{
public:
/* ... */
virtual inline int printf( const char * fpFormat, ... )
{
/* ... */
}
/* ... */
}
virtual inline метод.
Dummy00001,
08 Февраля 2012
-
+1004
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
class FuncFileOutStream: public fileOutStream
{
public:
/* ... */
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, bool b);
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, char c);
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, long l);
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, int i);
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, short s);
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, const char* pc);
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, float f);
friend FuncFileOutStream& operator<<(FuncFileOutStream& out, double d);
/* ... */
};
попытка перенаправления данных проходящих через ostream.
только маленькая тонкость. fileOutStream уже перенакрывает ostream специально для этой цели - что бы собственный streambuf подставить, который данными проходящими через ostream и манипулирует используя два официальных виртуальных метода - вместо дюжины корявых операторов которые наверное и половины того что проект испульзует не покрывают. ну бляха муха поэтому же и сделали streambuf в стандарте, что бы вот таким маразмом не страдали...
Dummy00001,
08 Февраля 2012
-
+159
- 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
var wma0;
wma0 = {
0: "02:35 08/01/2012",
1: "дайте скрипт подарки",
id: 3,
uid: 103,
login: "gadget"
}
mess[0] = wma0;
var wma0;
wma0 = {
pol: 0,
last: 1325975830
}
u[0] = wma0;
var wma1;
wma1 = {
0: "10:19 20/12/2011",
1: "уххйййффыввы",
id: 2,
uid: 90,
login: "kotofeyka"
}
mess[1] = wma1;
var wma1;
wma1 = {
pol: 0,
last: 1324361954
}
u[1] = wma1;
json? Не, не слышал
jQuery,
08 Февраля 2012
-
+38
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
$t='array(';
foreach ($info as $k=>$v){
$t.='"'.$k.'"=>"'.mysql_escape_string(htmlspecialchars($v)).'"';
if ($i<($cnt-1)) $t.=',';
$i++;
}
$t.=')';
if ($labelingid) sql ("UPDATE labeling SET info='$t' WHERE id='$labelingid'");
Хрясь!
brainstorm,
08 Февраля 2012
-
+1007
- 1
- 2
- 3
- 4
- 5
#if defined( HPUX_11_31 )
#define BDYNAMIC_CAST( CLASS, OBJECT ) (( CLASS ) ( OBJECT ))
#else
#define BDYNAMIC_CAST( CLASS, OBJECT ) (dynamic_cast< CLASS >(( OBJECT )))
#endif
чуть кофе не похлебнулся.
при более детальном рассмотрении кода из-за которого это сделали, выяснилось что: (А) в проекте нет ни одного места где нужен динамик каст и (Б) половина наших С++ профисианалов не умеют пользоватся конст кастом (который по коду там и был им нужен, вместе со статик кастом).
Dummy00001,
08 Февраля 2012
-
+971
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
using System;
public class Man
{
static int num;
public Man parent = new Man(); //У каждого человека есть родители, ведь так?
static Man()
{
num = 0;
}
public Man()
{
num++;
}
}
Компилятор C# против перенаселения, вовремя выдаёт StackOverflowException, пока расплодиться не успели..
vistefan,
08 Февраля 2012