在 C++ 中,有几种获取输入的方法。以下两种情况有什么区别?
char x;
x=cin.get();
/* The above code can be a one-liner */
对比
char x;
cin.get(x);
在这种情况下,它们是相同的(就行为get
和从流中提取的字符而言)。从文档:
int get();
istream& get (char& c);
“从流中提取单个字符。该字符要么返回(第一个签名),要么设置为其参数的值(第二个签名)。”
这两种情况基本没有区别
cin.get(void) 从输入流返回一个字符
cin.get(char &c) 返回 void 但将传递的变量设置为从输入流中读取的字符
如果您真的对内存很挑剔,cin.get(char &c) 可能会为您节省 1 个分配,因为 char 作为返回类型,但是我更喜欢使用单行 char x = cin.get();