0

我分配了一个数组,malloc然后尝试使用 for 循环和指针算法填充它,但由于某种原因它不起作用。

int* myArray = (int*)malloc(100*sizeof(int));

for (int i = 0; i < 100 ; i++)
{
    *myArray = i;
    myArray++;      
}
4

1 回答 1

6

当您这样做时,myArray++您会丢失指向已分配内存的原始指针。

相反,您可能应该这样做:

*(myArray + i) = i;

甚至只使用普通的数组索引:

myArray[i] = i;
于 2013-04-02T03:08:05.660 回答