Найти индекс элемента в int32
массиве на SD-карте по значению. Функция возвращает индекс первого вхождения, либо, при указании start_index, ищет, начиная с заданной позиции.
Для работы функции необходима SD-карта
В меню функций | На схеме |
---|---|
![]() |
![]() |
Название | Тип значения | Описание |
---|---|---|
id |
int32 |
Идентификатор файла.Идентификатор файла участвует при формировании имени файла на SD-карте. Подробнее о формате имени файла написано в статье по работе с SD-картой |
get |
bool |
Сигнал начала поиска. Функция начинает работу по переднему фронту и продолжает попытки выполнения до успешного выполнения, до ошибки или до прихода на вход get значения False |
start index |
int32 |
Индекс элемента массива, начиная с которой необходимо выполнить поиск. Самый первый элемент буфера имеет индекс 0 |
value |
int32 |
Значение, по которому выполняется поиск в массиве |
Название | Тип значения | Описание |
---|---|---|
index |
int32 |
Индекс найденного элемента или -1, если значение не найдено |
ended |
bool |
Индикатор завершения выполнения функции: 1 — работа завершена 0 — нет |
status |
int32 |
Состояние функции: 0 — бездействие 1 — открытие 2 — закрытие 3 — закрытие (после ошибки) 4 — перемещение по файлу 5 — чтение -1 — операция не поддерживается -2 — операция недоступна -3 — файл недоступен -4 — неправильный индекс элемента -5 — ошибка |
0 -> 1 -> 5 -> 2 -> 0 // финальный статус в случае успеха
| | |
| | * -> 3 -> [-1 .. -5] // ошибка в процессе выполнения
| |
| *--> 3 -> [-1 .. -5] // ошибка после открытия
|
*--> [-1 .. -5] // ошибка до открытия
Отсутствуют
Найдем в файловом массиве элемент, равный 2500:
Теперь найдем следующее вхождение. Для этого передадим в start_index значение выхода index + 1. Если не увеличить индекс, функция снова вернет то же значение: