1 <?xml version="1.0" encoding="UTF-8"?>
3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 * Copyright (C) 2008 - INRIA
7 * This file must be used under the terms of the CeCILL.
8 * This source file is licensed as described in the file COPYING, which
9 * you should have received as part of this distribution. The terms
10 * are also available at
11 * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
14 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ru" xml:id="mseek">
16 <refname>mseek</refname>
17 <refpurpose>устанавливает текущую позицию в двоичном файле</refpurpose>
20 <title>Последовательность вызова</title>
21 <synopsis>mseek(n [,fd, flag])</synopsis>
24 <title>Аргументы</title>
30 положительный скаляр: смещение от исходного положения в количестве байтов.
38 скаляр: дескриптор файла, возвращённый функцией <function>mopen</function>. <literal>-1</literal>
39 указывает на последний открытый файл. Значение по умолчанию равно <literal>-1</literal>.
47 строка: определяет исходное положение. Значение по умолчанию --
48 <literal>'set'</literal>.
55 <title>Описание</title>
57 Функция <function>mseek</function> устанавливает положение следующей
58 операции ввода или вывода потока <varname>fd</varname>. Новое
59 положение находится на расстоянии (со знаком), указанном в
60 <varname>n</varname> байт от начала, от текущего положения или от
61 конца файла в соответствии со значением <varname>flag</varname>,
62 которое может быть <literal>'set'</literal>, <literal>'cur'</literal>
63 или <literal>'end'</literal>.
66 Функция <function>mseek</function> позволяет индикатору положения в
67 файле быть установленным за пределами конца существующих данных в
68 файле. Если данные будут позднее записаны в это место, то последующее
69 чтение этих данных в пропущенном месте будет возвращать ноль до тех
70 пор, пока данные не будут действительно записаны в пропущенное место.
71 Функция <function>mseek</function>, сама по себе не увеличивает
76 <title>Примеры</title>
77 <programlisting role="example"><![CDATA[
78 file3=fullfile(TMPDIR,'test3.bin');
79 fd1= mopen(file3,'wb');
89 fd1= mopen(file3,'rb');
91 res1=[1:11]; res1(1)=678;res1($)=932;
93 write(%io(2),'Ошибка в программе');
97 // попытка чтения данных более, чем сохранено
98 res1=mget(100,'d',fd1);
100 write(%io(2),'Ошибка в программе');
107 <refsection role="see also">
108 <title>Смотрите также</title>
109 <simplelist type="inline">
111 <link linkend="mclose">mclose</link>
114 <link linkend="meof">meof</link>
117 <link linkend="mfprintf">mfprintf</link>
120 <link linkend="fprintfMat">fprintfMat</link>
123 <link linkend="mfscanf">mfscanf</link>
126 <link linkend="fscanfMat">fscanfMat</link>
129 <link linkend="mget">mget</link>
132 <link linkend="mgetstr">mgetstr</link>
135 <link linkend="mopen">mopen</link>
138 <link linkend="mprintf">mprintf</link>
141 <link linkend="mput">mput</link>
144 <link linkend="mputstr">mputstr</link>
147 <link linkend="mtell">mtell</link>
150 <link linkend="mdelete">mdelete</link>