#include <stdio.h>
int main() {
int function(int a,int b){
int result = 1;
for (int i = 1;i<b;i++){
result = result * a;
}
return result;
}
}
这段代码试图在 main 函数内部定义另一个函数,这在标准 C 语言中是不允许的。C 语言不支持嵌套函数定义,所有函数必须定义在全局作用域中。
- 你需要把 function 的定义移到 main 函数的外面,放在 #include 之后、main 之前。
- 另外,循环条件 i<b 会导致指数运算少乘一次 a,比如计算 a 的 b 次方时,应该循环 b 次而不是 b-1 次。