在数组中使用指针时,需要特别注意数组元素的类型与指针的类型一致;同时也需要注意对于指针所指向的内存空间的释放。
以下是一个用于解决此问题的示例代码:
#include
#include
int main() {
int* arr[5];
for(int i = 0; i < 5; i++) {
arr[i] = malloc(sizeof(int));
*arr[i] = i;
}
for(int i = 0; i < 5; i++) {
printf("%d\n", *arr[i]);
free(arr[i]); // 释放内存空间
}
return 0;
}
在该代码中,创建了一个包含5个元素的数组arr,每个元素都是一个指向int类型内存空间的指针。在循环中,为每个指针分配内存空间,依次赋值为该指针在数组中的下标。最后循环输出每个指针所指向的内存空间的值,并释放每个内存空间。