/*
    找出以下程序的bug, 并修正 int main()
    {
        const int *a = malloc(20);
        for (int i = 0; i < 20; i++)
        {
            *(a + i) = i;
        }
        printf("%d %d\n", a[0], a + 2);
    }
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
    int *a = malloc(20); // 修改1: 去掉 const 修饰
    for (int i = 0; i < 20; i++)
    {
        *(a + i) = i;
    }
    printf("%d %d\n", a[0], *(a + 2)); // 修改2: a+2 加上解引用 *, 以取得元素值
    free(a);                           // 修改3: 释放手动分配的内存空间

    return 0; // 修改4: 加上 return 0
}