Сб июл 20, 2019 11:02:46
Сб июл 20, 2019 11:45:37
Сб июл 20, 2019 13:30:16
Сб июл 20, 2019 19:09:27
Вс июл 21, 2019 11:53:40
Вс июл 21, 2019 12:14:08
Вс июл 21, 2019 12:21:23
Вс июл 21, 2019 12:25:57
typedef unsigned char uchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;
typedef unsigned long long ulonglong;
typedef signed long long longlong;
typedef signed char s8;
typedef signed short s16;
typedef signed long s32;
typedef signed long long s64;
typedef unsigned char u8;
typedef unsigned short u16;
typedef unsigned long u32;
typedef unsigned long long u64;
Вс июл 21, 2019 12:28:36
Вс июл 21, 2019 16:02:29
это может и не проще, но правильнее по логике. а для float ваш алгоритм тоже подойдет? мой - да. заодно мой алгоритм подойдет и для ввода дней недели в символьном виде, и для месяца и для чего угодно - преобразуем из машинно-удобного вида в человеко-удобный, правим ПОСИМВОЛЬНО, затем обратно в машинно-удобный вид. первый и последний этап делается стандартными библиотечными функциями типа atoi-itoa, весь труд в написании посимвольного редактора строки для ограниченного набора символов. собственно, в самом простом случае это сводится к двум операторам ifjcxz писал(а):И это - проще???
if(str[cur_pos] > MAX_SYMBOL) str[cur_pos] = MIN_SYMBOL;
if(str[cur_pos] < MIN_SYMBOL) str[cur_pos] = MAX_SYMBOL;
Вс июл 21, 2019 20:21:12
Пн июл 22, 2019 07:09:55
Пн июл 22, 2019 09:24:27
Где одну то ? Ему нужно изменить число, состоящее из нескольких цифр !jcxz писал(а):Ну да - автору нужно изменить всего одну цифру, .... бла-бла-бла ...
................
................
char ch_val[16]; // 16 - от балды
int idx=0;
................
................
if(btnUp){
ch_val[idx]++;
if(ch_val[idx] > '9') ch_val[idx] = '0';
}
if(btnDown){
ch_val[idx]--;
if(ch_val[idx] < '0') ch_val[idx] = '9';
}
if(btnOk){
idx++;
// Тут проверка на перепонение индекса и выход из редактирования
}
................
................
Пн июл 22, 2019 09:41:15
Пн июл 22, 2019 09:47:34
Эм... А как Вы выводите своё число на дисплей (ну или на чём Вы там редактируете) ?ROMan2947 писал(а):пример кода преобразования числа long в строку можно в лоб
Пн июл 22, 2019 09:51:48
Пн июл 22, 2019 09:53:31
Пн июл 22, 2019 09:57:48
Пн июл 22, 2019 10:02:52
Пн июл 22, 2019 10:05:58
ROMan2947 писал(а):пример кода преобразования числа long в строку можно в лоб, да так, чтобы в элементы массива поместить каждую цифру числа поотдельности
char rezult[16];
long variable = 12345678;
ltoa(variable, rezult, 10);
// в массиве rezult символы указанного числа в виде строки