+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
/* Get LDAC handle */
LDACBT_API HANDLE_LDAC_BT ldacBT_get_handle( void )
/* Free LDAC handle */
LDACBT_API void ldacBT_free_handle( HANDLE_LDAC_BT hLdacBT )
/* Close LDAC handle */
LDACBT_API void ldacBT_close_handle( HANDLE_LDAC_BT hLdacBT )
/* Get ERROR CODE */
LDACBT_API int ldacBT_get_error_code( HANDLE_LDAC_BT hLdacBT )
/* Get Configured Sampling frequency */
LDACBT_API int ldacBT_get_sampling_freq( HANDLE_LDAC_BT hLdacBT )
СОНЭ умеет в комментарии.
https://android.googlesource.com/platform/external/libldac/+/master/src/ldacBT_api.c
Elvenfighter,
09 Сентября 2018
−2
- 1
if type(colType) == type(0): # it's a length
Библиотека csv, встроенная в питон.
syoma,
01 Сентября 2018
−3
- 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
//+-------------------------------------------------------------------------
//
// Function: GetNumberOfType
// SetNumberOfType
//
// Synopsis: Helpers to get/set an integer value of given variant type
// by dereferencing a pointer
//
// pv - pointer to dereference
// vt - variant type
//
//--------------------------------------------------------------------------
// BUGBUG: The VC 5 compiler flags this as an error because VT_BOOL4 is not
// a valid VARENUM value. Disable the warning for now.
#pragma warning(disable:4063) // case '254' is not a valid value for switch of enum 'VARENUM'
long
GetNumberOfType (void * pv, VARENUM vt)
{
switch(vt)
{
case VT_I2:
case VT_BOOL:
return * (SHORT*) pv;
case VT_I4:
case VT_BOOL4:
return * (LONG*) pv;
default:
Assert(FALSE);
return 0;
}
}
void
SetNumberOfType (void * pv, VARENUM vt, long l)
{
switch(vt)
{
case VT_BOOL:
l = l ? VB_TRUE : VB_FALSE;
// vvvvvvvvvvv FALL THROUGH vvvvvvvvvvvvv
case VT_I2:
Assert(l >= SHRT_MIN && l <= SHRT_MAX);
* (SHORT*) pv = SHORT(l);
break;
case VT_BOOL4:
l = l ? VB_TRUE : VB_FALSE;
// vvvvvvvvvvv FALL THROUGH vvvvvvvvvvvvv
case VT_I4:
* (LONG_UNALIGNED *) pv = l;
break;
default:
Assert(FALSE);
}
}
Опять какая-то сранина известно откуда.
CCAHA9I_CPAHIHA,
31 Августа 2018
0
- 1
- 2
#define ONE_GB 1024
#define FIVE_GB 5115
Написано в очень известной Калифорнийской конторе
Starl1ght,
30 Августа 2018
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
class TaxStorage {
public:
using TaxCode = Code<3>; // Code<int N, typename Storage = uint32_t> тип для маленьких строк
using TaxType = Code<3>;
using TaxId = std::tuple<TaxCode, TaxType>;
using TaxMap = std::map<TaxId, int>
using CityId = int;
using TaxPointMap = std::unordered_map<CityId, TaxMap>;
TaxMap forCityOrOther(const TaxPointMap& map, const CityId cityId) const {
const auto found = map.find(cityId);
return found == map.cend() ? map.at(OTHER_CITY) : *found; // должно быть found->second
}
}
Dev: Ok GCC, tell me what is wrong.
GCC: /home/whatever/project/TaxStorage.h:102: error: incompatible operand types ('const std::unordered_map<int, std::map<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> >, std::less<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> > >, std::allocator<std::pair<const std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> > > > >, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<const int, std::map<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> >, std::less<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> > >, std::allocator<std::pair<const std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> > > > > > > >::mapped_type' (aka 'const std::map<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> >, std::less<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> > >, std::allocator<std::pair<const std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> > > > >') and 'const std::pair<const int, std::map<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> >, std::less<std::tuple<Code<3, unsigned int>, Code<3, unsigned int> > >, std::allocator<std::pair<const std::tuple<Code<3, unsigned int>, Code<3, unsigned int> >, std::vector<unsigned long, std::allocator<unsigned long> > > > > >')
ДОКОЛЕ?!!
Elvenfighter,
24 Августа 2018
−1
- 1
- 2
$query = "SELECT * FROM archivo_mhora WHERE id_aparato=" . $aparatos_row->id;
$query .= " && DATE_FORMAT(fecha, '%Y.%m.%d')='" . date('Y.m.d', $cur_fecha) . "' ORDER BY energy";
Я не знаю, к какой секции следует отнести этот высер:
1) Автор решил учить испанский. Таблицы имеют имена `aparatos`, `abonandos`, etc
2) Само собой, SQL injection
3) Порнография при работе с датой
kai,
23 Августа 2018
−1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
#include <stdio.h>
#include <inttypes.h>
int main(void) {
float a = 0;
float b = -9.8 * 0;
uint32_t* pa = (void*)&a;
uint32_t* pb = (void*)&b;
printf("%li %li %i %f %f\n",pa[0] , pb[0], pb[0]>>31, b+0, b);
return 0;
}
Нолик со взведенным знаковым битом. Вот зачем он нужен?
Psionic,
16 Августа 2018
+2
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Попытка
Если Найти( ОформлениеСтроки.ДанныеСтроки.Загружен, Истина ) Тогда
// раскраска строки
КонецЕсли;
Исключение
КонецПопытки
На первый взгляд возникает вопрос: WTF???7семь
На десятый взгляд меня посетили сомненья, ведь код а) рабочий, и 2) гениален!
Смотрите сами.
Вместо "Если ОформлениеСтроки.ДанныеСтроки.Загружен Тогда"
гений с большой буквы "Г" делает финт ушами с наподвыподвертом:
Так как функция "Найти" работает со строками и 1С автоматически преобразует, где возможно, типы, булево значение ОформлениеСтроки.ДанныеСтроки.Загружен приводится к строке, равной "Истина" или "Ложь". Второй аргумент также приводится к строке, равной "Истина". Далее функция "Найти" выполняет поиск подстроки (аргумент №2) в строке (аргумент №1) и возвращает позицию найденной подстроки, в результате имеем 1 если ОформлениеСтроки.ДанныеСтроки.Загружен = Истина, или 0 в противном случае.
Получается
Если 1 Тогда....
или
Если 0 Тогда....
где 1 или 0 автоматически приводится 1Ской к типу булево, где Булево(1) = Истина, и Булево(0) = Ложь.
ИГОГО:
Условие выполняется, а гений с большой буквы "Г"... пугает меня, если честно, одним своим существованием о_О
whiledoman,
17 Июля 2018