首先,我已经阅读了一些参考文献并用谷歌搜索了它。但是,如果不使用getch()
按Enter键,我就无法找到任何读取输入的方法。而getchar() cin>> and getline()
需要输入才能读取输入。我正在练习在线评委的问题,他们不接受conio.h图书馆。有没有办法做到这一点?感谢。
顺便说一句,我的目标是让每个数字都按下阵列。
答案 0 :(得分:1)
istream& getline (istream& is, string& str)
,用法:
#include<iostream>
int main(){
std::string output;
std::getline(std::cin, output);
}
取自std::cin
的一行存储在output
中。您可以使用output
阅读每个output[i]
个字符,其中i
是您想要获得的字符数,或者使用output.data()
,它返回相同的数据,存储在char[]
。
每种方法都允许您将char
作为一个字符阅读。看起来你想要一个数字作为数字,而不是作为字符。
char
也是数字。每封信都有自己的代码。
char code
'0'==48
'1'==49
'2'==50
'3'==51
'4'==52
'5'==53
'6'==54
'7'==55
'8'==56
'9'==57
正如您所看到的,数字一个接一个地设置得很漂亮,而关于n
的数字更多也有更多关于n
的代码。如何使用它?简单:只需在char
后char
,48
或'0'
减少{{1}}以获得更好的可读性,将数字作为数字。
答案 1 :(得分:0)
要阅读数字,只需使用std::cin
,我就不明白为什么您不想按 Enter 来确认传递的数字。
当您在char之后读取char时,如果您想要更正部分输入的数字,则必须编写其他代码 - 您必须处理 Backspace ,箭头,删除,并且可能 Home ,结束, Shift 与箭头结合使用时的行为......那是很多工作。