C++中signed?main和int?main的區(qū)別
?前言
今天看見(jiàn)大佬的C++代碼,主函數(shù)"int main"打成了"signed main",心生疑問(wèn),便去查閱。
#pragma Gcc optimize(3,"inline","Ofast");
#include<bits/stdc++.h>
using namespace std;
#define int long long
typedef long long ll;
signed main(){
double d;cin>>d;
printf("%.1f",d/59535);
}
因?yàn)轭^文件聲明:#define int long long,然后int main改成signed main就行了
個(gè)人平時(shí)寫(xiě)代碼最簡(jiǎn)單的缺省源是:
#include<bits/stdc++.h>
#define int long long
using namespace std;
signed main(){
return 0;
}
注意到 #define int long long 而 main 函數(shù)必須返回一個(gè) int 值,所以不能使用 int main()。
那怎么辦呢?通常使用 signed main,因?yàn)?signed 等效替代于 signed int,也就是有符號(hào)整型,這與 int 別無(wú)二致,并且不會(huì)導(dǎo)致奇怪的 CE。
int本來(lái)就是signed int。int = signed int = signed,就像unsigned = unsigned int
當(dāng)你不確定過(guò)程中會(huì)不會(huì)爆 int 的時(shí)候,可以這么寫(xiě)。
同樣的字節(jié)數(shù),如果保存符號(hào)位,范圍為正負(fù),數(shù)字位相對(duì)少一,絕對(duì)值范圍小
總結(jié):
頭文件聲明#define int long long,防止爆int
主要區(qū)分
#define ll long long
int main(){
ll int x;
scanf("%lld",&x);
}
#define int long long
signed main(){
...
}
一種獨(dú)特的定義longlong的方法:
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int p=1e9+3;
int T,n,m,a,fac[100010]={1};
signed main()
{
for(int i=1;i<=100000;i++) fac[i]=fac[i-1]*i%p;
scanf("%lld",&T);
while(T--)
{
int res=1,ans=1;
scanf("%lld %lld",&n,&m);
for(int i=1;i<=n;i++) scanf("%lld",&a),res=res*fac[a]%p;
for(int i=1;i<=m;i++) scanf("%lld",&a),ans=ans*fac[a]%p;
if(res==ans) puts("equal");
else puts("unequal");
}
return 0;
}
以上所述是小編給大家介紹的C++中signed main和int main的區(qū)別,希望對(duì)大家有所幫助。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
C語(yǔ)言修煉之路數(shù)據(jù)類型悟正法?解析存儲(chǔ)定風(fēng)魔上篇
使用編程語(yǔ)言進(jìn)行編程時(shí),需要用到各種變量來(lái)存儲(chǔ)各種信息。變量保留的是它所存儲(chǔ)的值的內(nèi)存位置。這意味著,當(dāng)您創(chuàng)建一個(gè)變量時(shí),就會(huì)在內(nèi)存中保留一些空間。您可能需要存儲(chǔ)各種數(shù)據(jù)類型的信息,操作系統(tǒng)會(huì)根據(jù)變量的數(shù)據(jù)類型,來(lái)分配內(nèi)存和決定在保留內(nèi)存中存儲(chǔ)什么2022-02-02
C++實(shí)現(xiàn)統(tǒng)計(jì)代碼運(yùn)行時(shí)間的示例詳解
這篇文章主要為大家詳細(xì)介紹了C++一個(gè)有趣的小項(xiàng)目——統(tǒng)計(jì)代碼運(yùn)行時(shí)間,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-05-05

