显示WideString的变量到控制台(Showing WideString variable in

2019-09-28 02:05发布

我有一个展示WideString的到控制台的问题。 我在生成C ++和C ++一般全新的。 不知道如果我需要一些头或可能在调试的时候可以帮助显示的值。 似乎这样做时

wcout << s;

它显示的地址,而不是“WCHAR阵列”。

这是我的代码:

//---------------------------------------------------------------------------
#include <iostream.h>
#include <vcl.h>
#include <string>
#include <wstring.h>
#pragma hdrstop
//---------------------------------------------------------------------------

#pragma argsused
int main(int argc, char* argv[])
{

    int a;
    WideString s;
    string str;

    cout << "Enter a: ";
    cin >> a;
    //to read the return
    cin.get();
    cout << "Enter str: ";
    cin >> str;
    //to read the return
    cin.get();
    cout << "\n";
    s = L"HELLO";
    wcout << s;
    cout << "\n\n";
    wcout << L"BYE";
    cout << "\n\nPress any key to continue...";
    cin.get();

    return 0;

    }
//---------------------------------------------------------------------------

这是输出:

Enter a: 4
Enter str: potato

2fb0b4

BYE

Press any key to continue...

Answer 1:

你传递WideString映射wcout。 WideString的是一个完整的类,它包含和宽字符,不只是一个字符串操作。 使用c_bstr WideString的方法来获得实际的字符串。

WideString str;
str = L"HELLO";
wcout << s.b_cstr();


文章来源: Showing WideString variable into console