我必须将一个字符串输入到一个无符号短数组中。
这是我的实现:
unsigned short strFile [ 200 ] = {0};
cin >> strFile;
我已经包括了iostream.h标题。
但我总是得到一个错误:
错误 C2678:二进制“>>”:未找到采用“std::istream”类型的左侧操作数的运算符
任何人都知道我应该如何解决这个问题?
我必须将一个字符串输入到一个无符号短数组中。
这是我的实现:
unsigned short strFile [ 200 ] = {0};
cin >> strFile;
我已经包括了iostream.h标题。
但我总是得到一个错误:
错误 C2678:二进制“>>”:未找到采用“std::istream”类型的左侧操作数的运算符
任何人都知道我应该如何解决这个问题?
没有一种字符串可以与unsigned short[].
有普通的字符串char [](在 C++ 中,string除了常量外,你应该始终将其保留在其中!)和宽字符串,即wchar_t[](在 C++ 中,您应该始终将其保留在 中wstring)。并且 C++11 增加了char16_tandchar32_t和它们对应的u16stringand u32string。
您可以从普通输入流中读取普通字符串,例如cin. 您可以从宽输入流中读取宽字符串,例如wcin.
wchar_t在 C 中曾经是 typedef unsigned short,但 C++ 要求它是一个单独的类型。ISO/IEC 14882:2003 3.9.1/5:
Type
wchar_t是一种独特的类型,其值可以表示支持的语言环境 (22.1.1) 中指定的最大扩展字符集的所有成员的不同代码。