| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3560 人关注过本帖
标题:请问我这句话错在哪?在cpp中是可以cout<<ends;的ends的作用是在缓冲区插入 ...
只看楼主 加入收藏
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
以下是引用叶纤在2020-3-17 23:57:09的发言:

还有std :: basic_ostream的对象难道不是cout,cerr什么的吗,既然说可以配合使用std :: basic_ostream,不就是和cout这样的东西一起使用吗

从来就不是能编译能运行能输出就叫做正确了
编程没那么简单
随便举个例子
程序代码:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
    int n;
    cout << n;    
    return 0;
}

一样能编译能运行能输出
问题是输出是什么
能不能解决问题达到目的
回到原题
cout<<ends
不是能输出就完事
还得能达到目的
请问这里用cout<<ends 是为了达到什么目的
目测常见是用来输出一个空格
问题是 ends 和空格没关系 输出空格只是一个可能性
预期输出
1 2 3 4
运行输出可能是
1234
运行输出可能是
1a2a3a4
这合理吗
这还正确吗
设计ends 根本就不是准备给cout使用
cout<<ends 只是自找麻烦


https://zh.
2020-03-18 00:22
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
程序代码:
确实在Windows上是输出的空格,在手机端是输出是空空的没有空格,既然手机端和电脑端用cout不报错,那不就等于cout是可以跟着ends的吗?
最重要的是看使用者怎么使用的的呢?
就像goto一样。有的人就喜欢用,但大部分人都知道要避免使用
也像using namespace std;呢我的教材说尽量避免使用这句话,因为有可能会有冲突,但是大部分人都喜欢用using namespace std;吗,
也像 unsigned 我的教材说避免使用,因为如果益处就是另一个结果了,如果结果是负号也是另一个结果了,说使用也可以在什么,再哪地方使用是比较好的,我突然忘了
总之,少部分人喜欢这样用可能有个人的目的,但是不一定是错的啊
#include <iostream>
#include<typeinfo>//

using std:: cout;
using std::ends;
int main()
{
   std::string a={"seff"};
  cout<<1<<'\0'<<1;cout<<std::endl;
  cout<<1<<ends<<1;cout<<std::endl;
   cout<<1<<static_cast<char>(0)<<1;


    return 0;}



把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-18 00:23
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
回复 12楼 叶纤
程序代码:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
    int n;
    cout << n;    
    return 0;
}
这样的代码就是错的

https://zh.
2020-03-18 00:31
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
回复 12楼 叶纤
有什么个人目的 自嗨无所谓
这里新手很多会误导新人
不要在新手问题贴里面 使用cout<<ends这种错误的错误

https://zh.
2020-03-18 00:32
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
回复 12楼 叶纤
既然手机端和电脑端用cout不报错
看11楼 我解释了不是没报错就是对的

https://zh.
2020-03-18 00:33
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
回复 13楼 lin5161678
未初始化啊。突然想练习五笔打字了。。。

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-18 00:35
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
回复 16楼 叶纤
未初始化输出垃圾值是错的
为什么cout<<ends随便输出就不是错了?

https://zh.
2020-03-18 00:41
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
你睡觉吧明天再说,反正就是感觉前面加cout也没错

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-18 00:42
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
以下是引用lin5161678在2020-3-18 00:41:58的发言:

未初始化输出垃圾值是错的
为什么cout<<ends随便输出就不是错了?

可是endl ends,cin,print和一个变量值不一样啊他们不用初始化的,你家的endl需要初始化呀

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-18 00:45
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
回复 19楼 叶纤
问题不在初始化
问题在输出结果无法确定

https://zh.
2020-03-18 00:49
快速回复:请问我这句话错在哪?在cpp中是可以cout<<ends;的ends的作用是在缓冲区 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017145 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved