⚠️ C 数组和 Python 列表差在哪

最要紧的一处差别是【0】。

开始练习 →

🔴 下标越界会怎样

数组只有 5 个元素,你去读第 10 个。结果是【0】。

开始练习 →

怎么知道一个数组有几个元素

手里是一个数组本尊(不是指针),求元素个数的写法是【0】。

开始练习 →

数一数、加一加、取一个

(本条路线统一用 gcc -std=c11 -O0 编译) #include <stdio.h> int main(void) { int a[5] = {10, 20, 30, 40, 50}; int n

开始练习 →

⚠️ 把数组交给函数之后

(本条路线统一用 gcc -std=c11 -O0 编译)这次把数组传进了两个函数,长度是单独传进去的: #include <stdio.h> #define N 5 int sum_of(const int *a, int

开始练习 →

求出长度再遍历

(本条路线统一用 gcc -std=c11 -O0 编译)把元素个数算出来,让循环走完整个数组。

开始练习 →

⚠️ 把越界的那一轮去掉

(本条路线统一用 gcc -std=c11 -O0 编译)这段用一个 if 硬挡住了越界,但循环本身还是多转了一轮。把边界改对,并把循环**实际转的轮数**打出来。

开始练习 →

原地把数组颠倒过来

(本条路线统一用 gcc -std=c11 -O0 编译)两头往中间换。输出颠倒之后的第 0、2、4 个。

开始练习 →

一个指针变量里装的是什么

int *p = &v; 之后,p 里装着【0】。

开始练习 →

⚠️ `*p` 在两个地方意思一样吗

int *p; 里的 * 和 *p = 9; 里的 *【0】。

开始练习 →