编写C语言程序时为什么会显示要在int main的int后面加分号

图片说明

这是我的代码


#include<stdio.h>
int main()
{
    char c = 0, ch=0;
    while ((c = getchar()) != '\n')
    {
        if (c == 32)
        {
            continue;
        }
        else
        {
            ch = c;
        }
        printf("%d", ch-48);
    }
}

求大神解答

1.上楼是错的,不写return 0编译器默认会给你加(不过某些比赛专用系统需要return 0)。
2.上楼又错了,float main不存在。只有int main() unsigned main() signed main() 某些编译器还有void main()。
3.可能是你编译器出了什么问题int main()不用写分号。

我的也出现了这个问题,晚上我是把电脑睡眠了,编译器一直开着,第二天就这样了。我解决的办法是,重新建了一个项目,程序就能正常执行了。

结尾处应该加上:
return 0;