概述
C++
常用的输入输出cin/cin.getline/cin.get/getline(string)
-
Tab、space结束符。enter是判断输入流结束的表现。不要把他和普通的结束符看成一样的。
-
cin.getline /cin.get都是遇到enter会终止,但不同的是,cin.getline会把缓冲区当中的enter删除掉,不影响下一次的输入。而cin.get不会删除。
-
getline(string):Get line from stream into string (function
),不是遇到space tab就结束的,会记录下字符串当中的space。
如果以,;或0等作为输入的区分
cin.getline用法:接收一个字符串,可以接收空格并输出
- cin.getline()实际上有三个参数,cin.getline(接收字符串的变量,接收字符个数,结束字符);
- 当第三个参数省略时,系统默认为’ ’
- 如果将例子中cin.getline()改为cin.getline(m,5,‘a’);当输入jlkjkljkl时输出jklj,输入jkaljkljkl时,输出jk
例:以;为分隔符输入5个人的名字,每个人名字长度不超过10个字符
#include<iostream>
using namespace std;
int main()
{
char name[5][10];
int i;
for (i = 0; i < 4; i++)
cin.getline(name[i],10,';');
//最后一个名字是结尾是/n,没有;号所以要另外输入
cin.getline(name[i], 10);
//输出
for (i = 0; i < 5; i++)
cout << name[i] << endl;
}
输入:aa;bb;cc;dd;ee
输出:
aa
bb
cc
dd
ee
不能用cin.get(),cin.get会保留‘;’在输入流里,再第二次写入的时候,会读取到上一次输入的‘;’,直接结束输入导致无法输入
输入以空格为间隔的数组
cin作为输入时,以enter作为结束
例:先输入n,然后输入n个数,输出那n个数
#include<iostream>
using namespce std
int main()
{
cin >> n;//先输入要输入的数的个数
*p = new int[n];//开辟空间,以n为第一个数
for(int i=0; i<n; i++)
cin>>p[i];
for (int i = 0; i < n; i++)
cout << *(a+i) << endl;
}
输入:3
1 2 3
输出:1
2
3
输入多组数据
int n;
while(cin>>n){//while cin这里
int* a = new int[n];
...
}
无空格 的字符串,cin>> , 如果是char[] 用memset
#include<string.h>//和string是两个东西!!
char out[8];
memset(out,'0',8);//初始化注意
char str[30];
cin>>str;
//也可以用string,但是都不记录空格
输出的时候也必须
for(int i =0;i<8;i++){//必须是这种
cout<< out[i]; //否则会出现 烫烫
}
python
a=input() | 输入一行数据,数据类型为str | |
---|---|---|
sys.stdin.readline().strip() | 输入多行数据 | |
最后
以上就是美好外套为你收集整理的面试准备,输入输出(c++/python)C++python的全部内容,希望文章能够帮你解决面试准备,输入输出(c++/python)C++python所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复