Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

MySQL. Библиотека профессионала - Аткинсон Л

..pdf
Скачиваний:
168
Добавлен:
24.05.2014
Размер:
10.41 Mб
Скачать

362 Глава Библиотека функцийязыкаС

my_bool

char *

char *

**cs,

**cs, const char

 

*set, myf myflags)

***charsets, myf myflags)

myf flags)

 

char

myf flags)

Функции работы с файлами

Ниже перечислены функции, предназначенные для манипулирования файлами и каталогами.

char *

to)

uint

my_string to, char *from)

File

char *dir, char

mode,

myf

uint

char

uint

to, char *name)

*path)

static char *

*to, char *name)

my_string

char *name)

Функции работы с файлами 363

to, char char *dsk, char flag)

to, const char

void

to, int

int

File

int int myf MyFlags)

int

myf MyFlags)

my_string

fd)

int

*fd, myf MyFlags)

FILE *

 

char

int Flags, myf MyFlags)

FILE *

 

int Flags,

myf MyFlags)

byte *Buffer, uint Count, myf MyFlags)

*stream,

int whence, myf

my_off_t

*stream, myf MyFlags)

uint

*stream, byte *Buffer, uint Count, myf MyFlags)

int

uint size, myf MyFlags)

to, char *path, char

File

*FileName, int Flags, myf MyFlags)

my_string

to, char *progname, char

uint

364 Глава Библиотека языка С

byte *Buffer, Count,

File

char *FileName,

uint myf MyFlags)

*dir, myf MyFlags)

uint

Filedes, byte *Buffer, uint Count, myf MyFlags)

void

to, char *from)

void

*dir)

int

*dir_name)

uint

to, char

to, char

uint

to, char *from)

void

to)

int

*str, char *wildstr)

Функции обработки ошибок

Ниже перечислены функции, предназначенные для обработки ошибок и выдачи сообщений об ошибках.

int

myf MyFlags,

int

error, char *str, myf MyFlags)

int

(uint error, char

myf MyFlags,

Функции работы

365

Функции работы с хэш таблицами

Перечисленные ниже функции реализуют в которой нет переполне ния страниц и пустых слотов. Кроме того, она защищена от проблем фрагментации.

my_bool

*hash)

*hash, byte *record)

byte *

*hash,

void

*hash)

*hash, uint size, uint uint key_length,

get_key, void uint flags)

my_bool

*info, const byte *record)

byte *

const byte *record, uint *length, first)

uint

uint uint

const byte *key, uint length)

uint

*pos, uint buffmax, uint maxlength)

gptr

*hash, const byte *key, uint length)

my_bool

*hash, byte *record, byte *old_key, uint old_key_length)

Функции работы со списками

Ниже перечислены функции, предназначенные для работы с двухсвязными спи сками.

LIST

*

list

*root, LIST

366 Глава Библиотека функций языка С

LIST *

*data, LIST *list)

LIST *

*root, LIST *element)

void

*root, free_data)

*list)

LIST *

*list, list_walk_action action, argument)

Функции управления памятью

Ниже перечислены функции, предназначенные для управления памятью.

gptr

unsigned int Size)

void

*dst, uint old_length, char *src, uint uint tot_length)

void

*dst, *src, uint

void

*dst, char *src, uint len)

void

*root,

void

uint block_size, uint pre_alloc_size)

char *

*root, char *str, uint len)

byte *

*packet, *len,

gptr

int Size, myf MyFlags)

gptr

void

Функции работы с опциями 367

gptr

Size,

void

gptr

Size, myf MyFlags)

*from, myf MyFlags)

char *

*root, char *str)

Функции работы с опциями

Перечисленные ниже функции предназначены для управления конфигурацион ными файлами.

void

**argv)

void

char *conf_file, const char **groups, int *argc, char ***argv)

void

char *conf_file, const char **groups)

my_bool

*args, MEM_ROOT *alloc, const char *dir, const char

const char *ext,

Функции обработки паролей

Следующие две функции предназначены для работы с паролями.

char *

*opt_message)

void

*to, const char

Функции обработки строк

Ниже перечислены функции, манипулирующие включая функции пре образования строк в данные других типов.

368 Глава Библиотека функций языка С

*str)

void

length)

void

str)

void

str, uint length)

void

str)

*str, char *append)

*str, char *append, uint length)

void

*str)

*str, ulong additional_size)

my_bool

*str, char *init_str)

my_bool

*str, const char uint init_alloc, uint

char *

char *dst, radix)

char *

int val, char *dst, int radix)

int

*s, char *t)

char *

value, char *buff)

char *

val, char *dst, int radix)

int

char *s, const char *t, uint

my_bool

*packet, ulong *len, ulong

void

int
int
int
int

Функции обработки строк 369

in_addr in, char *buf)

char *

char *dst, radix)

char *

int val, char *dst, int radix)

char *s, const char *t,

char *s, uint s_len, const char *t, uint t_len)

char *str, const char *search)

char *s, const char *t)

char *s, const char *t)

(byte *packet, *len,

char *

const char *src, register int radix, long int lower, long int upper, long int *val)

char *

const char *s, register

strcont(regl const char *str, reg2 const char *set)

char *

const char *s)

uint len, pchar fill)

uint

*str, char

char *

*dst, char *src, uint length)

char *

*dst, char *src)

uint

*s, uint

char *

*dst, char *src, uint

370 Глава Библиотека функций языка С

char *

*src, char **ptr, base)

char *

*src, char **ptr, int base)

char *

*src, char **ptr, int base)

char *

*src, char **ptr, int base)

char *

*dst, const char *src,

Функции работы с потоками

Ниже перечислены функции, реализующие потоки, а так же исключающие семафоры

void

*attr, int priority)

int

thread_id)

void *

key)

void

thread_id, int prior)

int

*cond, safe_mutex_t struct char *file,

line)

int

*cond, char *file, uint line)

int

char *file, uint line)

int

const *attr)

int

char *file, uint line)

int

safe

char *file, uint line)

int

my *set, int *sig)