最近,我在竞争性编程网站上遇到了以下给定的代码,
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define mp make_pair
#define pb push_back
#define d double
#define FAST ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
signed main()
{ return 0; //Omitted the rest of the code
}
[Full Code][1]
https://www.codechef.com/viewsolution/22121098
我想知道这段代码和带有int main()
的常规C ++代码在效率和性能方面(在CPU速度方面)有什么区别。问题集通常很大。
答案 0 :(得分:5)
signed
是signed int
,它也是int
。
所以signed main()
是 int main()
。
作者要么想显得聪明,要么想变得聪明而失败。
答案 1 :(得分:4)
signed main()
等效于int main()
,除非-如示例中一样-您具有将int
定义为long long
的宏。 main()
有返回int
,但是宏#define int long long
意味着在这种情况下使用语法int main()
不会编译错误并指出{{ 1}}必须返回::main
。因此,int
。