138 |
С т р а н и ц а
Мы объявляем массив С-стиля следующим образом:
#include
using namespace std;
int main()
{
cout << "
Насколько большой?" << endl;
int size; //
пробуем применить переменную для размера...
cin >> size;
/
/ следующая строка будет выглядеть странно...
int *array = (int*)malloc( size*sizeof(int) ); // C-style
//
заполняем массив и выводим
for( int index = 0; index < size; index++ )
{
array[ index ] = index * 2;
cout << array[ index ] << endl;
}
free( array ); //
должны вызвать free() для массива распределённого с
// malloc() (
не delete[]!)
}
Разница здесь выделена жирным шрифтом.
Массив С-стиля создан с использованием функции malloc(). Слово malloc означает
“memory allocate” – “распределяет память”. Эта функция требует, чтобы для
создания вы передали размер массива в битах, а не просто количество желаемых
элементов в массиве. По этой причине, мы умножаем число запрашиваемых
элементов (размер) посредством sizeof – размера типа внутри массива. Размеры в
битах, нескольких частых С++ типов, перечислены в следующей таблице:
Достарыңызбен бөлісу: