如何根据这些条件释放内存?: 如果使用的内存是<系统容量的25%,释放50%未使用的内存。
这是我的代码尝试:
答案 0 :(得分:1)
您的问题似乎是
if(rand() % 1 > 0) {
rand() % 1
始终为0
更改为:
if(rand() % 2 > 0) {
有一个拼写错误:
while(current = !NULL) {
更改为
while(current != NULL) {
不要忘记将next
节点重新连接到循环中的前一节点,使用临时节点,例如:
temp = current;
while (current != NULL) {
next = current->next;
if (rand() % 2 > 0) {
temp->next = next;
free(current);
} else {
temp = current;
}
current = next;
}