Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 8 мая!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Возможности языков семейства Си по истине безграничны, однако, в этой свободе кроются и недостатки: всегда нужно программисту держать ухо востро и контроллировать "переполнение буфера", чтобы потом программа не вылетала в "синий экран" на массе разнообразных версий Windows и железа у пользователей. Те же крэкеры и реверсеры специально ищут в коде программ на Си уязвимости, куда можно подсадить любой вирусный код, об этом более подробно автор рассказывал в своём видеокурсе здесь. Я там многое узнал и теперь мой код стал значительно более безопасный.

Функция Позиционирует указатель текущей позиции в файле,

 
                    связанном с потоком stream.
 
 
 
 Синтаксис          #include<stdio.h>
 
                    int fsetpos(FILE *stream, const fpos_t *pos);
 
 
 
 Файл содержащий    stdio.h
 
 прототип
 
 
 
 Описание           fsetpos устанавливает   указатель  текущей  позиции
 
                    файла, связанного с потоком stream в новую позицию,
 
                    которая    определяется    значением,    получаемым
 
                    предшествующим  вызовом  функции  fgetpos.  fsetpos
 
                    также   сбрасывает   признак  конца  файла,  но  не
 
                    оказывает влияния на символы,  помещаемые  в  поток
 
                    функцией   ungetc.   После   вызова  fsetpos  можно
 
                    производить как операции ввода, так и вывода.
 
 
 
 Возвращаемое       При успешном завершении fsetpos возвращает 0. При
 
 значение           возникновении ошибки она возвращает ненулевое
 
                    значение и устанавливает errno не равным 0.
 
 
 
 Переносимость      fsetpos поддерживается стандартом ANSI C.
 
 
 
 Смотрите также     fgetpos, fseek, ftell.
 
 
 
 Пример:
 
 
 
 #include<stdlib.h>
 
 #include<stdio.h>
 
 
 
 void showpos(FILE *stream);
 
 
 
 int main(void)
 
 {
 
    FILE *stream;
 
    fpos_t filepos;
 
    /* открыть файл для изменения */
 
    stream = fopen("DUMMY.FIL","w+");
 
    /* сохранить текущую позицию указателя */
 
    fgetpos(stream,&filepos);
 
    /* записать в файл данные */
 
    fprintf("stream,"Это тест");
 
    /* вывести текущую позицию */
 
    showpos(stream);
 
    /* установить новую позицию и вывести ее */
 
   if(fsetpos(stream,&filepos) == 0)
 
      showpos(stream);
 
    else
 
    {
 
      fpritf(stderr,"Ошибка указателя файла\n");
 
      exit(1);
 
    }
 
    /* закрыть файл */
 
    fclose(stream);
 
    return 0;
 
 }
 
 void showpos(FILE *stream)
 
 {
 
    fpos_t pos;
 
    /* вывести текущее положение указателя */
 
    fgetpos(stream,&pos);
 
    printf("Позиция указателя: %ld\n",pos);
 
 }


<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS