您的位置 首页 > 数码极客

字符型数组如何输入字符型数组输入格式…

一、关于输入缓冲区

你是否存在这样的疑问?当你从键盘上输入数据给一个程序时,它经历了一个什么样的过程呢?

程序运行起来要接受数据输入时——>小手指键入hello回车——>hello回车被送入到输入缓冲区——>程序就从缓冲区里读取数据,缓冲区指针来记录读取以避免重复读。

方式:一般用cin输入数据,输入时不能实现类型转换。


二、一个字符的输入

用cin、cin.get()、cin.get(char)、getchar()的区别,以下方法均可以用Ctrl+Z结束输入

  • 方法一:直接用cin输入字符——在输入时,用空格间隔字符、输入回车结束时,输出会跳过空格、跳过回车,只输出字符。
  • 方法二:用cin.get()输入字符——有两种形式,一种形式是无参数(方法二),另一种形式有参数(方法三);能把空格、回车当普通字符输出。用法如下:
char c; while((c=cin.get())!=EOF) cout<<c;
  • 方法三:cin.get(char)输入字符

用法如下

char c; while(c))//读取一个字符变量赋值给c cout<<c;
  • 方法四:用getchar()输入字符

不跳过任何字符,连Ctrl+Z也可以打印出来。用法如下:

char c; while(c=getchar())//不跳过任何字符 cout<<c;

三、一串字符的输入

  • 方法一:直接用cin输入字符串

和cin输入字符不同:cin输入字符串是把空格和回车作为字符串的间隔标志

用法如下:

char str[10]; while (cin>>str) cout<<str<<endl; return 0; 输入: abc def g 回车 输出: abc def g
  • 方法二:用cin.get()函数输入

有三个参数的get函数

cin.get(ch,10,'\o');//表示读取10-1个字符(包含空格),赋给指定的字符数组ch,‘\o’为指定的终止字符。

①如果读取过程中遇到终止符,则提前结束读取;如果第三个参数没有指定,则默认为'\n';

②读取成功返回非0值(真),读取失败(遇EOF)则返回0值(假)。

char ch[20]; cin.get(ch,10,'\o'); cout<<ch<<endl;
  • 方法三:用cin.getline()函数输入

原理方法如上述方法二,

cin.getline()与cin.get()有一点区别:

①cin.getline()遇到终止标志字符时结束,缓冲区指针移到终止标志字符之后;

②cin.get()遇到终止字符是停止读取,缓冲区指针不移动。


注:以上为视频课的学习总结笔记,如有不正确欢迎指正。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“字符型数组如何输入,字符型数组输入格式,字符型数组输入输出,字符型数组输入字符串,字符型数组输入和输出”边界阅读