<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://ejudge.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=Libchecker%3AXALLOCAZ</id>
	<title>Libchecker:XALLOCAZ - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://ejudge.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=Libchecker%3AXALLOCAZ"/>
	<link rel="alternate" type="text/html" href="https://ejudge.ru/wiki/index.php?title=Libchecker:XALLOCAZ&amp;action=history"/>
	<updated>2026-04-07T07:53:28Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://ejudge.ru/wiki/index.php?title=Libchecker:XALLOCAZ&amp;diff=2197&amp;oldid=prev</id>
		<title>Cher: New page: Навигация: Главная страница/Система ejudge/Проверяющие программы/libchecker/[[Libchecker:Функции|Фун...</title>
		<link rel="alternate" type="text/html" href="https://ejudge.ru/wiki/index.php?title=Libchecker:XALLOCAZ&amp;diff=2197&amp;oldid=prev"/>
		<updated>2008-08-22T13:54:39Z</updated>

		<summary type="html">&lt;p&gt;New page: Навигация: &lt;a href=&quot;/wiki/index.php/Main_Page&quot; title=&quot;Main Page&quot;&gt;Главная страница&lt;/a&gt;/&lt;a href=&quot;/wiki/index.php/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_ejudge&quot; title=&quot;Система ejudge&quot;&gt;Система ejudge&lt;/a&gt;/&lt;a href=&quot;/wiki/index.php/%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D1%8F%D1%8E%D1%89%D0%B8%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%8B&quot; title=&quot;Проверяющие программы&quot;&gt;Проверяющие программы&lt;/a&gt;/&lt;a href=&quot;/wiki/index.php/Libchecker&quot; title=&quot;Libchecker&quot;&gt;libchecker&lt;/a&gt;/[[Libchecker:Функции|Фун...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Проверяющие программы]]/[[libchecker]]/[[Libchecker:Функции|Функции]]/[[Libchecker:Работа с памятью|Работа с памятью]]/[[Libchecker:XALLOCAZ|XALLOCAZ]]&lt;br /&gt;
&lt;br /&gt;
Данный макрос &amp;amp;mdash; это обертка над функцией выделения памяти [[alloca]]. Дополнительно к выделению памяти макрос заполняет выделенную память нулями. Например, если необходимо выделить память под массив a типа double из n элементов, с использованием alloca фрагмент кода будет следующим:&lt;br /&gt;
 a = (double*) alloca(n * sizeof(a[0]));&lt;br /&gt;
 memset(a, 0, n * sizeof(a[0]));&lt;br /&gt;
а с использованием макроса XALLOCAZ следующим:&lt;br /&gt;
 XALLOCAZ(a, n);&lt;br /&gt;
&lt;br /&gt;
У макроса XALLOCAZ два параметра. Первый параметр &amp;amp;mdash; это переменная указательного типа, в которой будет сохранен адрес выделенного фрагмента памяти.&lt;br /&gt;
Второй параметр &amp;amp;mdash; это количество элементов массива (обратите внимание, не размер массива в байтах, а именно количество элементов массива). И первый, и второй параметры используются несколько раз, поэтому выражения с побочными эффектами недопустимы.&lt;/div&gt;</summary>
		<author><name>Cher</name></author>
		
	</entry>
</feed>