OpenSCADAWiki: Roman Savochenko/C Short All/part2/part15 ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 

2.15 Специальные функции

asm (*NIX)
asm(asm_kod,output,input,modifi);
Позволяет выполнять встроенные инструкции языка asm <asm_kod> с входными параметрами <input>, выходными <output>, и модифицируемыми <modifi>.


assert (ANSI) <assert.h|cassert>
void assert (int expression);
Выводит на стандартный выход сообщение об ошибке и прекращает работу программы, если утверждение <expression> ложно (т.е., равно нулю). Происходит только в случае, если не определена переменная NDEBUG.


chroot (BSD)
int chroot(const char *path);
Функция установки нового корневого каталога.


getopt (POSIX) <unistd.h, getopt.h >
int getopt(int argc, char * const argv[], const char *optstring);
Обрабатывает параметры <argc> <argv> команды, на предмет поиска коротких опций <optstring>.


getopt_long (POSIX) <unistd.h, getopt.h>
int getopt_long(int argc, char * const argv[], const char *optstring, const struct option *longopts, int *longindex);
Обрабатывает параметры <argc> <argv> команды на предмет поиска коротких <optstring> и длинных <longopts> опций.


getenv (POSIX) <stdlib.h>
char *getenv(const char *name);
Получает значения переменной окружения <name>;


getpagesize (BSD) <unistd.h>
size_t getpagesize(void);
Возвращает количество байтов в странице.


longjmp (POSIX) <setjmp.h>
void longjmp(jmp_buf env, int value);
Передает управление по адресу <env> с порядковым номером <value>.


main (ANSI)
main(int argc, char *argv[], char *envp[]);
Основная функция (точка входа). Переопределяется для выполнения в ней пользовательской программы. Переменной <argc> присваивается общее число параметров разделенных пробелами. Переменной <argv> присваиваются отдельные параметры командной строки. Переменной <envp> присваиваются переменные среды вызываемой программы.


mtrace (*) <mcheck.h>
void mtrace(void);
Запуск трассировки – используемой программой памяти. Лог помещается в файл на который указывает переменная окружения MALLOC_TRACE. Для обработки лога вызывается команда: «mtrace my_prog $MALLOC_TRACE.


optarg (POSIX) <unistd.h>
extern char *optarg;
Содержит текстовый аргумент параметра.


optind, opterr, optopt (POSIX) <unistd.h>
extern int optind, opterr, optopt;
optind – индекс аргумента;
opterr – ошибка опции;
optopt – необработанная опция;


pathconf, fpathconf (POSIX) <unistd.h>
long pathconf(char *path, int name);
long fpathconf(int filedes, int name);
Возвращает ограничение параметра <name> для файловой системы на которой находится файл <path>,<filedes>.


putenv (POSIX) <stdlib.h>
int putenv(char *string);
Добавляет или изменяет переменную окружения.


setjmp (POSIX) <setjmp.h>
int setjmp(jmp_buf env);
Запоминает в <env> адрес текущего места в программе для дальнейшего возврата к нему посредством longjmp. Функция возвращает порядковый номер сохраненного адреса начиная с “0”.


setenv, unsetenv (BSD) <stdlib.h>
int setenv(const char *имя, const char *значение, int overwrite);
void unsetenv(const char *name);
Изменение, добавление или удаление переменной окружения <имя> на <значение>.


sysconf (POSIX.1) <unistd.h>
long sysconf(int name);
Предоставляет приложениям информацию о соответствии OC стандарту POSIX. Также, предоставляется информация о всех POSIX параметрах.


sysinfo (Linux) <sys/sysinfo.h>
int sysinfo(struct sysinfo *info);
Возвращает общесистемную статистику.


uname (POSIX) <sys/utsname.h>
int uname(struct utsname *buf);
Возвращает информацию о системе в структуру с адресом <buf>.


 
Files[Hide files/form]
There is no comment on this page. [Display comments/form]