Как получить последние четыре числа в строку из массива символов в Mikroc Pro
У меня есть массив символов, как показано ниже,
char ch1_on[]="0123456789";
Мне нужно получить последние четыре числа (6789) вышеупомянутой переменной в переменную int. как мне это сделать?
1 ответ
Вам нужна функция memmove из библиотеки MikroC.
Его прототип определяется как: void *memmove(void *to, void *from, int n);
где void *to
является временным массивом символов (он будет содержать подстроку 6789), void *from
это ваш массив символов ch1_on
плюс начальный индекс того, что вам нужно скопировать (в вашем случае +6, потому что вы хотите скопировать символы из индекса 6-9) и int n
где 'n' - количество копируемых символов (в вашем случае это 4; 6, 7, 8, 9).
Итак, чтобы поработать над этим, вам просто нужно объявить владельца:
char converted[] = "0000";
и сделай мемове:
memmove(converted, ch1_on + 6, 4);
и, наконец, использовать atoi
преобразовать подстроку в целое число.
result = atoi(converted);
результат будет содержать окончательное целое число.
Для получения дополнительной информации, пожалуйста, обратитесь к разделу справки MikroC и найдите "memmove" в разделе "Строка библиотеки ANSI C".