Difference between revisions of "Libchecker:XCALLOC"
From EjudgeWiki
(New page: Навигация: Главная страница/Система ejudge/Проверяющие программы/libchecker/[[Libchecker:Функции|Фун...) |
|||
Line 6: | Line 6: | ||
XCALLOC(a, n); | XCALLOC(a, n); | ||
− | У макроса XCALLOC два параметра. Первый параметр — это переменная указательного типа, в которой будет сохранен адрес выделенного фрагмента памяти. Второй параметр — это количество элементов массива (обратите внимание, не размер массива в байтах). | + | У макроса XCALLOC два параметра. Первый параметр — это переменная указательного типа, в которой будет сохранен адрес выделенного фрагмента памяти. Второй параметр — это количество элементов массива (обратите внимание, не размер массива в байтах, а именно количество элементов массива). |
Revision as of 13:00, 22 August 2008
Навигация: Главная страница/Система ejudge/Проверяющие программы/libchecker/Функции/Работа с памятью/XCALLOC
Данный макрос — это обертка над функцией выделения памяти xcalloc. Например, если необходимо выделить память под массив a типа double из n элементов, с использованием xcalloc фрагмент кода будет следующим:
a = (double*) xcalloc(n * sizeof(a[0]));
а с использованием макроса XCALLOC следующим:
XCALLOC(a, n);
У макроса XCALLOC два параметра. Первый параметр — это переменная указательного типа, в которой будет сохранен адрес выделенного фрагмента памяти. Второй параметр — это количество элементов массива (обратите внимание, не размер массива в байтах, а именно количество элементов массива).