D3 Reference Manual

Index | Help

Поиск по страницам

Разделы / С-функции / _CP_readv

_CP_readv

readv (функциональность оператора FlashBASIC)

int _CP_readv(int type, CPSTR** result, int expression1,
 CPSTR* string, int expression2, int* value)
Эквивалентна одному из следующих операторов FlashBASIC в зависимости от типа ("type"):
Тип          Оператор FlashBASIC
_CP_READV    readv result from expression1,string,expression2
_CP_READVU   readvu result from expression1,string,expression2
_CP_READVUL  readvu result from expression,string,expression2 
              locked value = 1 end else value = 0 end

Если значение не требуется, пользователь может передать (int*) 0.

Вызов "_CP_readv" использует ту же самую оптимизированную программу чтения, что и FlashBASIC. Это работает в 2-5 раз быстрее, чем программа, используемая процессором AQL и обычным Pick/BASIC.

Выражение "expression1" должно быть указателем файла типа "int", возвращаемым функцией "_CP_open".

В случае ошибки эта функция возвращает "-1". Код ошибки содержится в "_CP_errno". Если номер атрибута неправилен, "_CP_errno" будет содержать "PE_BADATTR".

Примеры:

Следуюший пример читает первый атрибут записи "myid" из "myfile".

CPSTR * s = _CP_mkstr("myfile");
CPSTR * id = _CP_mkstr("myid");
CPSTR * xx = _CP_str_null;
int f;
_CP_open(&f,_CP_str_null,s);
_CP_readv(_CP_READV, xx, f, id, 1, 0);