让我们假设这段代码:
int i,j=0;
char* block = (char*) (0x9000);
char table[4]= {0x01,0x02,0x03,0x04};
for (i=0; i< 45567; i++) {
*(block +i)= table[j];
j++;
if (j==4)
j=0;
}
我想问一下:
- 内存是
block
在栈中还是在堆中分配的? - 这段代码可能会出现什么问题?
- 我可以
free(block)
在这段代码的末尾使用吗?