// 内存泄漏 #include #include #include // memset int *create(int n) { int *p = (int *)malloc(n * sizeof(int)); // n*4 memset(p, 0, n * sizeof(int)); if (NULL == p) { perror("malloc error"); } return p; } int main() { int *p = create(5); p[0] = 100; printf("%d\n", *p); // *p = p[0] // 用完之后,释放空间 free(p); return 0; // p 指向的空间没有释放,内存泄漏 }