我的程序在代码块上运行正常,没有警告,但是当我将代码提交给hackerrank时显示错误
solution.c: In function ‘main’:
solution.c:21:6: error: ‘main’ is normally a non-static function [-
Werror=main]
int main()
^~~~
cc1: some warnings being treated as errors
这是我的实际代码,是关于数据类型和字符串的简单问题
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
char* concat(const char *s1, const char *s2)
{
char *result = malloc(strlen(s1) + strlen(s2)+1 ); // +1 for the null-terminator
// in real code you would check for errors in malloc here
strcpy(result, s1);
strcat(result, s2);
return result;
}
int main(){
int i=4.0,x;
double d=4.0,y;
char result[301],z[100];
char* p=result;
char s[50]="HackerRank ";
scanf("%d",&x);
scanf("%lf ",&y);
int sum1=i+x;
double sum2=d+y;
p=concat(s,z);
printf("%d\n",sum1);
printf("%lf\n",sum2);
printf("%s",p);
return 0;
}
答案 0 :(得分:1)
solution.c:21:6: error: ‘main’ is normally a non-static function [- Werror=main]
该错误通常是由于左括号和右括号之间的不匹配引起的。 因此,在编译之前,请检查所有方括号是否再次匹配。
请参阅此question,其中提到了相同的问题。
答案 1 :(得分:-1)
如果您要在main内部创建main,那么您也可能会遇到相同的问题