различные сигнатуры C ++ main () и их эффективность - PullRequest
0 голосов
/ 29 декабря 2018

Недавно я столкнулся с приведенным ниже кодом на веб-сайте конкурентного программирования:

   #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

Я хотел бы знать, в чем разница между этим кодом иобычный код C ++ с int main() с точки зрения эффективности и производительности с точки зрения скорости процессора. Проблемы часто бывают огромными.

Ответы [ 2 ]

0 голосов
/ 29 декабря 2018

signed равно signed int, что также int.

То есть signed main() равно int main().

Автор либо хотел появитьсяумный или пытался быть умным и потерпел неудачу.

0 голосов
/ 29 декабря 2018

signed main() эквивалентно int main(), если - как в примере - у вас есть макрос, который определяет int как long long.main() имеет для возврата int, но макрос #define int long long означает, что использование синтаксиса int main() в этом случае не будет компилироваться с ошибкой, указывающей, что ::main должен вернуть int.Следовательно, signed main().

...