+ -
当前位置:首页 → 问答吧 → 两个小问题。。。。求解

两个小问题。。。。求解

时间:2011-12-19

来源:互联网

复制内容到剪贴板
代码:
#include<iostream>
using namespace std;
int main()
{
    char a[10];
    cin.get(a,10);
    cout<<a<<"结束"<<endl;
     return 0;
}
输入:asd) |2 {0 I, d; K' Y  K! D% p
输出:asd结束7 K8 g) E4 V5 l& R- s  A* o

8 _1 c- c8 ~3 _9 C问题:我按下回车后,"\0"空字符和"\n"换行符应该都保存在缓冲区里吧?为什么没被输出?
2 d% a8 m$ t  k4 B, _, g6 V( Z( w" z) t* B% e

4 E4 f: F0 ~+ G( _! Q1 @# F代码二:
复制内容到剪贴板
代码:
#include<iostream>
using namespace std;
int main()
{
    char a[10];
char b[10];
    cout<<"输入一:";
cin.get(a,10);
cout<<"输出一:"<<a<<endl;
cout<<"输入二:";
cin.get(b,10);
cout<<"输出二:"<<b<<endl;
cout<<"结束";
    return 0;
}
输入一:asd a0 v8 _6 `* A% g' v' d
输出一:asd a
/ o4 `8 {( b# B* i输入二:输出二:
+ J( V6 G6 ?% {! o结束3 E( s( T/ b( Z, T& A. Z! K
2 q0 u0 ~# j" f: H  p- x% s5 Y0 I
问题:这发生了什么,为什么在“输入二”我还没输入就直接结束了?

作者: panyuan224   发布时间: 2011-12-19

按下ENTER相当于回车换行
  A: y2 ^3 Z" H! L3 J其中"回车符"只起到将光标移动到本行行首的作用(无换行作用)。
( d" Z, p* V( ~"换行符"只起到换行作用,并不把光标移到下一行行首。
+ {4 p3 E; a( P" ~, g& r2 N5 b3 b两个合一起就是我们平时看的回车了2 Y2 A) p# l( f- s# [5 j$ Z
cin不接受回车符;而是体现到你的输入光标移到行首,并换行

作者: 月夜幻影   发布时间: 2011-12-19

第二个问题;
* G$ G4 `! W' t# a  a第一个cin.get(a,10);7 U5 R8 \0 n0 D& q  G
接受10个字符或者回车时结束;
+ M, ^. z- ~* I, P; [" D5 j& K6 s第二个cin.get(b,10);6 K5 q4 ^) E+ \; g  L
cin默认空格或者回车等位字符串间隔

作者: 月夜幻影   发布时间: 2011-12-19

热门下载

更多