c++标准输入输出流是啥?

版权声明: https://blog.csdn.net/lnaruto1234/article/details/87869098

1.什么叫标准的输入输出流?

执行一个shell命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),通常对应终端的键盘;标准输出文件(stdout)和标准错误输出文件(stderr),这两个文件都对应终端的屏幕。进程将从标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中。


1.getchar()是c语言中的一个函数,
可以用它来赋一个字符的值.
例如:char a;
a=getchar();
当你在键盘上输入一个字符后按回车;(输入u)
那么字符变量a的值就是'u'了.


getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).当用户键入回车之后,getchar才开始从stdio流中每次读入一个字符.getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键.

int main()
{   char a,b;
   a=getchar();
   b=getchar();
   cout<<a<<" "<<b<<endl;
  
    return 0;
}


输入:abs
输出:a b

getch与getchar基本功能相同,差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回, getch返回值是用户输入的ASCII码,出错返回-1.输入的字符不会回显在屏幕上.getch函数常用于程序调试中,在调试时,在关键位置显示有关的结果以待查看,然后用getch函数暂停程序运行,当按任意键后程序继续运行.


2getline(cin,str)就是从输入流中获取一行赋给str。.

int main()
{   string a,b;
    getline(cin,a);
    getline(cin,b);   
 cout<<a<<" "<<b<<endl;
  
    return 0;
}

输入:abc def
     123 456
输出:abc def
    123 456

猜你喜欢

转载自blog.csdn.net/lnaruto1234/article/details/87869098