ищите функцию в Unix

После того как Вы используете sub-replace-special, представленный с \=, все должно быть выражением Vim; Вы не можете предварительно ожидать / добавляют литеральный текст замены. Поэтому Ваш статический текст должен быть закодирован как Строки и связан с .:

:let i=1 | g/name/s//\='_first' . i/ | let i=i+1
3
28.12.2014, 19:37
4 ответа

seek(0, 0, 2) пропустит все данные, которые находятся в буфере, для файлового дескриптора 0. Так что после этой команды, следующее чтение из этого файлового скриптора будет а не читать все, что находится в буфере.

Я думаю, если вы изучите код и поймете, для чего он нужен, вы поймете, что хотя файловый дескриптор 0 - это обычно stdin, эта программа на самом деле полезна только в том случае, если она является частью скрипта, который читается через этот файловый дескриптор.

Например, взгляните на следующий скрипт:

goto
echo "hello"

gotogoto без каких-либо аргументов спровоцирует поиск.

Без seek(0, 0, 2) после выхода команды goto, скрипт все равно выполнял бы эхо-команду "hello", потому что вызывающая команда команды goto будет просто читать следующую команду из скрипта.

4
27.01.2020, 21:12

Это не после файла, поскольку смещение равно 0, поэтому он указывает на конец файла, обычно используется для добавления данных в файл.

Это делается с помощью stdin, чтобы пройти мимо ввода, который был написан и не читать, он неточно, чтобы обратиться к нему как буфер, поскольку если stdin - это труба, он читается до тех пор, пока нет дальнейших чтения.
Команда PassWD делает это, чтобы предотвратить случаи, когда есть вход, который не является частью самого пароля (например, дублирующих прессов на возврат) и для предотвращения с ним основным сценарием взаимодействия.

1
27.01.2020, 21:12

Вы хотели бы перемотать стандартный ввод перед возвращением из-за условия ошибки.

if (argc<2 || ttyn(0)!='x') {
    write(1, "goto error\n", 11);
    seek(0, 0, 2);
    return;
}
1
27.01.2020, 21:12

seek и fseek используются для изменения текущей позиции в файле (дескриптор (поиск) или указатель файла (fseek)). В C я обычно использую fseek. Некоторые типичные использования seek/fseek из конца файла (SEEK_END):

Позиция в конце файла = seek(f,0,2) или fseek(f,0,2)

Расчет размера файла = fseek(f,0,2); размер=ftell(f)

Позиция в конце файла минус 20 = fseek(f,-20,2)

Некоторые "файлы" не могут быть перемотаны

.
1
27.01.2020, 21:12

Теги

Похожие вопросы