LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1104|回复: 6

关于cout和printf的区别的问题

[复制链接]
发表于 2004-2-19 13:57:28 | 显示全部楼层 |阅读模式
最近调用getch()函数时,遇到了一个问题
我先用cout 显示一部分内容,然后调用getch,想从终端输入一个字符 。
运行时总是现让我输入一个字符,才显示cout输入的内容。
当我用printf时,就没有这个问题 ,它会先显示内容,才让我输入。

不知这是什么原因

请大侠执教!!
发表于 2004-2-19 15:54:19 | 显示全部楼层
既然用了C++ 就可以不用C,你把两种语言混合使用,会给代码的维护带来困难。
发表于 2004-2-19 21:27:12 | 显示全部楼层
同意kj501
如果你要用的话,应该刷新一下cout的缓存
 楼主| 发表于 2004-2-19 22:49:36 | 显示全部楼层
刷新一下cout的缓存是什么意思?
我不太明白
发表于 2004-2-21 11:26:37 | 显示全部楼层
unix/linux在输入输出上使用了行缓冲,如果不换行,就不会把写向标准输出的内容输出到屏幕上,而是保存在缓冲区里。刷新一下cout就是把保存在缓冲区中的内容强制输出到屏幕上。
发表于 2004-2-23 22:06:44 | 显示全部楼层
最初由 kj501 发表
既然用了C++ 就可以不用C,你把两种语言混合使用,会给代码的维护带来困难。


agree!;)
but how can i use operator << to do the same things like printf("%c[%d;%dH",27,x,y),
i want to use some C++ functions to set the cursor at the exact position of the screen,
but i dont know how to do ,
please help me
(sorry , my english is not good , and my debian gnu/linux cannot input Chinese.)
:help
发表于 2004-2-23 22:40:19 | 显示全部楼层
有些函数还是c好,如printf
凡事不要绝对化
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表