Я выделил массив, используя malloc
, и попытался заполнить его с помощью цикла for и арифметики указателя. Однако он не работает по какой-либо причине.Арифметика указателя для заполнения динамически выделенного массива в C
int* myArray = (int*)malloc(100*sizeof(int));
for (int i = 0; i < 100 ; i++)
{
*myArray = i;
myArray++;
}
Не могли бы вы объяснить, что не работает? – Mysticial
Обычно после инициализации указателя вы не добавляете его, чтобы увеличивать данные. Обычно вы просто выполняете 'myArray [ELEMENT] = val'. Указатели работают так же, как массивы. Просто мысль. – John
Вы должны объявить i вне цикла for. – Sinkingpoint