温馨提醒:这个代码有∞个坑
相信细心的人都看得出来
```c
//C语言
//事先声明:我是C++党
#include <cstdio>
long long int a,b;
main(){
scanf("%d%d",&a,&b);
printf("%d",a=b);
return 0;
}
```
by hushuoyan @ 2024-08-26 12:13:06
注意:题目要求的最大数据是$4*10^{18}$,而$int$的范围只有$-2.1*10^{9}$~$2.1*10^{9}$,所以要用$long$ $long$。正确代码:
```cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
long long a,b;
cin>>a>>b;
cout<<a+b<<endl;
return 0;
}
```
by luogu_00 @ 2024-08-29 09:56:50
@[hushuoyan](/user/1411725)
1. 这里的变量类型应该是"long long",而不是"long long int";
2. main函数没有返回值类型,应该写成"int main()";
3. a=b返回的是bool类型,应该改成a+b。
就只有这3个坑
正确代码:
```cpp
#include <cstdio>
long long a,b;
int main(){
scanf("%d%d",&a,&b);
printf("%d",a+b);
return 0;
}
```
by luogu_00 @ 2024-08-29 10:01:56
@[luogu_00](/user/1049033)
还有的:a=b改成a+b
```c
#include <cstdio> //C语言里没有cstdio,改成stdio.h
long long int a,b; //对的,[luogu_00](/user/1049033),有long long int,不信你试试
main(){ //可以这样
scanf("%d%d",&a,&b); //改成%lld
printf("%d",a=b); //1 改成%lld 2 2 a=b改成a+b
return 0;
}
```
已关
by hushuoyan @ 2024-08-30 20:07:34
@[zhuxuanzhuo](/user/1394688) 十年 OI 一场空,不开 long long 见祖宗
by lwp2013 @ 2024-09-05 19:23:30
@[hushuoyan](/user/1411725)
还有一个坑:这里少了一个 `#include<stdlib.h>`
正确代码:
```c
#include <stdio.h>
#include <stdlib.h>
long long a,b;
int main(){
scanf("%lld%lld",&a,&b);
printf("%lld",a+b);
return 0;
}
```
无论是C还是C++语言的 `main` 函数都必须是 `int` 类型,C语言的框架:
```c
#include<stdio.h>
#include<stdlib.h>
int main(){
return 0;
}
```
by luogu_00 @ 2024-09-08 16:55:54
@[Robot12](/user/1407434) long long!!!!!!!!
by lq_wangyiming @ 2024-10-07 09:08:31