Си++: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 416:
int *Piece = (int*)malloc(15 * sizeof(int));
</source>
Был, правда, у <tt>malloc()</tt>'а один "недостаток": выделяя память, он не изменял содержимое ячеек, поэтому там могло оказаться совершенно произвольное значение. С этим боролись либо с помощью специальной функции <tt>memset(ptr, c, n)</tt> (она заполняет <i>n</i> байт памяти начиная с места, на которое указывает <i>ptr</i>, значением <i>c</i>), либо с помощью <tt>calloc()</tt>'а. Функция <tt>calloc()</tt> принимает два параметра: число ячеек массива, под которые надо выделить память, и размер этой ячейки в байтах; делает эта функция следующее: выделяет нужное количество памяти (непрерывный кусок) и обнуляет все значения в нём. Таким образом такойЮратакой код:
<source lang=c>
int *Piece = (int*)malloc(15 * sizeof(int));