Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
0626114503_03 - Конспект лекций.doc
Скачиваний:
48
Добавлен:
21.04.2019
Размер:
554.5 Кб
Скачать

Лекция № 8 Функции работы с файлами в unix.

int open (

const char *fname,

int flags,

mdoe_t mode) // режимы

Флаги:

O_CERATE — создать, если нету.

O_EXCL — используется вместе с O_CREATE — должны только создать, если файл существует — ошибка.

O_TRUNC — обрезать содержимое файла при открытии

O_APPEND — открыть в режиме добавления (прерд каждой записью указатель автоматически устанавливается в конец)

O_PIRECT — не кэшировать

O_LARGEFILE — открыть файл, если он больше 4 Гб.

R — для каталогов — означает: получить список находящихся в нем файлов

W — право добавлять (создавать) или удалять файлы в каталоге

X — право находиться в каталоге (это право влияет на все подкаталоги)

Пример:

/а 0700 — права доступа — 111 000 000

/а/в - 111 111 111

Функция создает файл и возвращает дескриптор открытого файла

int creat(

const char *fname,

mode_t mode)

Ssize_t read (

int fd, //файловый дескриптор

void *buf, //буфер

size_t bytes)

Возвращает знаковый размер, если -1 — ошибка чтения

Ssize_t write (

int fd, //файловый дескриптор

void *buf, //буфер

size_t bytes)

Возвращает абсолютное значение смещения от начала файла

SEEK_SET

SEEK_CUR

SEEK_END

Закрывает файл

int close (int fd)

Лекция № 9 Java — скрипт.

Язык без строгой типизации.

Комментарии

// - однострочный комментарий

/* */ - многострочный комментарий

Присвоение =

Строка «»

true/false логический тип

null пустая ссылка

константы [1,2,3] — массив

[x:1, y: «abc»] — константный объект

function (x) {...} — функция

Объявление переменных:

var <переменная> [ = <значение>];

var a, b=0;

var c= «abc»;

Если переменная объявлена, но не инициализирована, то она хранит значение undefined.

Регистры учитываются.

b + «abc» = «0abc»

var a = 3, b = «2» → a + b = «32»

Типы данных

String, Number, Boolean, Object, Array, Null, Undefind, Function, Error, Data, RegExp

Number может хранить целые и не целые числа. Понимает цифровые константы:

951 — в десятичной форме

0752 — в восьмеричной форме

0хFA14C — в шестнадцатеричной форме

NaN — числовая константа — не число — возникает в случае, когда число получить невозможно (деление на 0 / «а»,...)

Boolean — true / false

Undefined — когда переменная не определена, когда пытаемся получить значение несуществующего свойства.

typeof(<переменная>) - если переменной нет, то вернется строка «undefined»

Операторы и операции.

  • -, ++, --, *, /, %, +, -, |, . , <, >, <=, >=, =, !=, &&, ||, ?:, , , = = = (сравнение с учетом типа), != =, ~, <<, >>, &, ^

  • if / else;

while;

do...while;

?::

swich;

for;

for / in (итератор)

for (<переменная> in <коллекция>)

{

...

}

break

continue

return

eval (<строка>)

Масcив

Массив [индекс] => значение

a[1] = 5;

a[«да»] = «abc»;

а[«count»] <=> a.count — правильный идентификатор

a.count = 5;

a[«count»] = = 5 => true

a[s]

[1, 2, 5,7]

a = [x:1, y: «abc»], где x и y — имена индексов

a.x <=> a[«x»]; a.y <=> a[«y»]

a[1] = 1; a[2] = 2; a[4] = 4

for (ind in obj)

{

wscript.echo(obj[ind]);

// вывод на экран всех свойств объектов

a[«s»] = function(x) {return x * x;};

a.s(5) // результат = 25

a.s = function(x) {return x + x;};

a.s(5) // результат = 10