C 那边:同一件事要手写几句"还"

👁️ 2 人浏览 💬 0 人评论 ❤️ 添加收藏

🔴 这一节把同一件事在三种语言里各做一遍:**C 手动 free、C++ 用 RAII、Python 交给运行时**。每道题的 code_language 不一样,注意看题面标的是哪一种。

(这一段是 C,用 gcc -std=c11 -O0 -Wall 编译)

#include <stdio.h>
#include <stdlib.h>

static int frees_written = 0;      /* 手写了几句"还" */

int main(void) {
    int *a = malloc(sizeof(int) * 2);
    int *b = malloc(sizeof(int) * 2);
    int *c = malloc(sizeof(int) * 2);
    if (!a || !b || !c) return 1;
    a[0] = 1; b[0] = 2; c[0] = 3;
    int s = a[0] + b[0] + c[0];

    free(a); frees_written++;
    free(b); frees_written++;
    free(c); frees_written++;

    printf("%d/%d\n", s, frees_written);
    return 0;
}
提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论