在字符数组中读取字符串而不使用任何字符串函数,甚至java中的C++
我想在不使用任何字符串类函数的情况下读取char数组中的字符串,甚至不使用Java中的charAt()、lenght()。我知道一种方法charc=(char)系统。在里面read()。但在这种情况下,用户char在命令行上写下一个完整的句子,即使只输入一个char。我希望用户能够键入一个字符,然后我可以对其执行一些操作,然后在同一行上键入下一个字符。。。。(就像我们在c++中所做的那样)。请给我一些建议。我想要一个类似于c语言的代码++
// c++ code
char c, d[50];
cin.get(c);
int i=0;
while(c != '\n')
{
d[i++]=c;
... //any expressions
...
cin.get(c);
}
# 1 楼答案
一次处理一个字符是不容易的
见关于SOthis和this。您可能会遇到一些麻烦,在特定操作系统上和没有来自
System.in
的数据,而是来自您自己的结构。如果您找到了在每次击键时刷新System.in
的方法,您的问题就解决了。据我所知,您不能从Java注册键盘IRQ你的NO-^ { CD3>}是很容易的部分,因为你可以使用与C++中相同的结构。问题在于
cin.get()
背后的机制,它在Java中没有类似物