一个求n到100之和的递归算法,程序闪退,哪里错了

#include<stdio.h>

int sum=0;
void f(int a)
{
sum=sum+a;
if(a<100)
f(a+1);
}

void main()
{
int b=1;
f(b);
printf("%d",sum);

}

我这边是没什么问题的

main.cpp:11:1: error: ‘::main’ must return ‘int’
11 | void main()
| ^~~~
这里解释够清楚了吧