为了账号安全,请及时绑定邮箱和手机立即绑定

请问为什么cout<<x,y,z<<endl;是错的

请问为什么cout<<x,y,z<<endl;是错的

正在回答

7 回答

<<是向左移位运算符,在接在输出流后的情况下被默认重载定义了输出功能,后接一个基本数据类型或字符、字符串常量。在"cout<<x,y,z<<endl;"中"cout<<x"输出x并返回一个标准输出流对象,也就相当于输出x先后再进行"cout<<,y,z<<endl;"那么下一步是"cout<<,"这是一个未定义的行为,也就是说系统没有定义这种写法。和用“+”去加两个未重载运算符的函数,用“*”去乘你自己定义的两个复数这类行为是一样的。语言本身没有这种规定,编程者用没有指明这样写的意义,计算机自然无法识别。

5 回复 有任何疑惑可以回复我~

这个就像英语语法,规定的你那样写是错误的.这样写cout<<x<<y<<z<<endl;是正确语法,是对的

0 回复 有任何疑惑可以回复我~

应该写成:“cout<<x<<y<<z<<endl;”

0 回复 有任何疑惑可以回复我~

你学了重载就知道了~

0 回复 有任何疑惑可以回复我~

没有规矩,不成方圆!规矩。

0 回复 有任何疑惑可以回复我~

你能告诉我为什么要学英语么..

1 回复 有任何疑惑可以回复我~

这个你可以问问发明C++的那个人。。。。C++中就那么规定的,这有啥好纠结的。。。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之起航篇
  • 参与学习       291033    人
  • 解答问题       760    个

C++亮点尽在其中,本课程是在C语言基础上的一个延伸,得以升华

进入课程

请问为什么cout<<x,y,z<<endl;是错的

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信