关于read()在读入时的顺序问题
  • 板块学术版
  • 楼主YT0104
  • 当前回复9
  • 已保存回复9
  • 发布时间2024/5/29 20:42
  • 上次更新2024/5/29 23:54:16
查看原帖
关于read()在读入时的顺序问题
260886
YT0104楼主2024/5/29 20:42

rt,刚调代码,因为懒,所以写了诸如:

void add(int now,int l,int r,int k)
……
…………
add(1,read(),read(),read());

的代码。

但是出错了。

然后在函数内输出调试了亿下,发现是 l,rl , r 在开始就反了。然后就改成了:

l=read();r=read();
add(1,l,r,read());

l,rl,r 的顺序就没有问题了。

但是还是想问一下为什么 l,rl,r 的顺序会反,之前也有过类似的经历,一直不知道为什么,就知道它输入时有时候会反。

求各位 dalaodalao 的指导吊打。/bx/bx/bx

pc. 附上 read()read() ,防止 read()read() 出锅:

int read(){
	int rt=0;bool kk=0;char g=getchar();
	while(g<'0'||g>'9')	kk|=(g=='-'),g=getchar();
	while(g>='0'&&g<='9')	rt=(rt<<3)+(rt<<1)+g-'0',g=getchar();
	return (kk?-rt:rt);
}
2024/5/29 20:42
加载中...