Пт фев 09, 2018 20:46:59
enum _cmp_type_e {
_cmp_char = 'C',
_cmp_ushort = 'U',
_cmp_short = 'S',
_cmp_uint = 'T',
_cmp_int = 'I',
_cmp_float = 'F'
};
class comparator
{
public:
uint8_t arg1[4];
uint8_t arg2[4];
_cmp_type_e arg_type1, arg_type2;
}
Пт фев 09, 2018 21:06:58
Сб фев 10, 2018 07:00:25
Сб фев 10, 2018 09:07:21
Сб фев 10, 2018 10:52:49
alex_ писал(а):_cmp_char = 'C', это прокатит, а все остальные это не символьные элементы а числовые
Сб фев 10, 2018 10:57:38
Сб фев 10, 2018 12:40:33
Сделайте оба аргумента float, а где им присваиваются значения других переменных разных типов просто приводите к float.
Сб фев 10, 2018 12:44:20
Сб фев 10, 2018 12:55:12
alex_ писал(а):но вот как сравнивать числовой и знаковый, по коду ASCII?
RealHann писал(а):enum по умолчанию 8 бит
Сб фев 10, 2018 14:03:01
Сб фев 10, 2018 14:08:05
alex_ писал(а):А как же это?
Пн фев 12, 2018 12:43:29
#include <stdio.h>
int int_x = 2027764539;
float float_x = 2027764539.0;
int main (void)
{
float float_y = (float) int_x + 5.0;
printf ("int_x=%d, float_x=%f\n", int_x, float_x);
printf ("float_y=%f, (float_y > float_x) ==> %s\n", float_y, (float_y > float_x) ? "Да" : "Нет");
return 0;
}
Пн фев 12, 2018 14:46:20
viiv писал(а):int имеет размер 32бита
Пн фев 12, 2018 15:09:02
Пн фев 12, 2018 20:36:42
if( *((uint32_t*)arg1) == *((uint32_t*)arg2) )
{
/* Enter your code here */
}
Пн фев 19, 2018 21:14:32
if( *((uint32_t*)arg1) == *((uint32_t*)arg2) )
{
/* Enter your code here */
}
Пн фев 19, 2018 23:55:07
Вт фев 20, 2018 13:07:11
Вт фев 20, 2018 13:11:55
сюр какой-то... просто так сравнение чего-то с чем-то делает оператор сравнения. и если для вашего "сравнивателя" надо указывать, что с чем сравнивать, то чем это отличается от тупой записи оператора А>B?RealHann писал(а):выполняет задачу сравнения. чего с чем неизвестно, пока этого не укажет пользователь в конфигураторе. у объекта два "входа" для аргументов, управление типами этими аргументами и "выход" < = >
Вт фев 20, 2018 13:15:05
сюр какой-то... просто так сравнение чего-то с чем-то делает оператор сравнения. и если для вашего "сравнивателя" надо указывать, что с чем сравнивать, то чем это отличается от тупой записи оператора А>B?RealHann писал(а):выполняет задачу сравнения. чего с чем неизвестно, пока этого не укажет пользователь в конфигураторе. у объекта два "входа" для аргументов, управление типами этими аргументами и "выход" < = >