循环变量销毁问题,纠结
比如一个循环for(::){
int i=9;
}如果每次循环不销毁i,那么第二次循环的i=9不是就重复定义了i吗?
但是如果要销毁
int kk=9;
for(::){
int *i=(int *)malloc(sizeof(int));
}中每次循环后malloc产生的空间还在吗?如果在,那i会被销毁,而空间还在,那这个没有指针的空间不是也没有任何价值吗?
#include<stdio.h> #include<stdlib.h> int main() { int i=0; int *k=NULL; for(i=0;i<3;i++) { k=(int *)malloc(sizeof(int)); printf("%p\n",k); } return 0; }