不使用conio.h库读取输入

Read input without using conio.h library

本文关键字:读取 输入 conio      更新时间:2023-10-16

首先,我读了一些参考文献,并在谷歌上搜索了一下。但是我找不到任何方法来读取输入,而不使用getch()按enter键。而getchar() cin>> and getline()需要输入来读取输入。我在和网上评委练习答题他们不接受conio.h图书馆。有什么办法吗?谢谢。

顺便说一句,我的目标是让每个数字按下进入一个数组。

istream& getline (istream& is, string& str),用法:

#include<iostream>
int main(){
    std::string output;
    std::getline(std::cin, output);
}

一行,取自std::cin,存储在output中。您可以使用output[i]读取每个output的字符,其中i是您想要获取的字符数,或者使用output.data(),返回相同的数据,存储在char[]中。

这些方法都允许您将char读取为一个字符。似乎你想把一个数字作为数字,而不是作为字符。

char也是number。每个字母都有自己的代码。

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'减少以获得更好的可读性,以获得数字作为数字。

要读取数字,只需使用std::cin,我不明白为什么你不想按输入来确认传递的数字。

当你一个字符接一个字符地读取时,如果你想纠正部分输入的数字,你必须编写额外的代码-你必须处理退格,箭头,删除,可能还有Home结束Shift与箭头组合时的行为…