2016-04-22 22 views
1

文字列^の文字をスタックに入れて後で使用するようにしようとしていますが、実際に何が入っているかを確認するときには、後でそれを使いこなす(例えば、文字列の中から " - "文字を取得しようとすると、 "45" - ""と表示されます)。 45 =としてシステム文字列^スタックに文字を追加する(Visual C++)

String^ input = "8-2"; 
char Temp = input[1]; 

一時変数が表示されます「 - 」

が、私はそれが同じように文字に保存したいのですが - だけなので、私は、スタックに追加して、後でそれを呼び出します「」ピーク()しかし、私はどのように把握することはできません。

+0

*** 'String ^'の '^'は何ですか?***これはC++ - cliではなく、標準のC++です。 – drescherjm

+0

これは、デバッガが 'char'値を表示する方法と同じです。1971年のようです。おそらく、String型がUnicode文字列を格納しているので、代わりに 'Char'を使用することを意図していました。 'char'は8ビット型のレガシーCです。文字列の要素は' wchar_t'や 'System :: Char'に収まります。 –

答えて

0

45は、文字-のASCIIコードです。あなたのデータを整数と文字の両方で表示します。

0

「char」(C++/CLIを使用している場合)はC/C++タイプ(「文字」の1バイト表現)です。これは.NETタイプではありません。代わりにChar(例:System::Char)を試して、それが機能するかどうか確認してください。

関連する問題