这段代码定义了一个函数 `digit_sum`,用于计算一个无符号整数的各位数字之和。但在 `main` 函数中,你声明了一个变量 `sum` 却没有给它赋值,然后直接打印它,这会导致输出不确定的值(可能是垃圾值)。另外,`main` 函数末尾缺少一个分号。
- 在 `main` 函数中,你声明了 `int sum;` 但没有初始化,然后直接 `printf("%d", sum);`。你应该先调用 `digit_sum` 函数,把结果赋给 `sum`,再打印。
- 检查 `main` 函数最后一行:`return 0` 后面缺少分号。