CのSTRを s3d::String にスマートな変換
VIC  2016/07/25(Mon) 01:35
CのSTRを s3d::String に変換サンプルを作りました。

#define _CRT_SECURE_NO_WARNINGS
# include <Siv3D.hpp>

void Main()
{
const Font font(30);

char *ms = "テストTestてすと";
wchar_t ws[100];
int len;

setlocale(LC_CTYPE, "jpn");

len = mbstowcs(ws, ms, 100);

while (System::Update())
{
font(ws).draw();

Circle(Mouse::Pos(), 50).draw({ 255, 0, 0, 127 });
}
}

逆は1行でできますが、もっとスマートな方法はないのでしょうか?

%d %f %s などを使いたいので、char* > String へのスマートな変換を知りたいです。
記事編集
Reputeless  2016/07/25(Mon) 15:02
https://github.com/Reputeless/Siv3D-Reference/blob/master/Programming%20Guide/CharacterSet.md を参照してください。

また、数値から文字列への変換は Format か、Python スタイルのフォーマットを推奨します。
https://github.com/Reputeless/Siv3D-Reference/blob/master/Tutorials/Formatting.md
編集
VIC  2016/07/28(Thu) 01:48
リファレンスが無いと誤解していました。

あることを理解しました。ありがとうございます。


# include <Siv3D.hpp>

void Main()
{
Println(WidenAscii("Siv3D"));

WaitKey();
}

これで理解いたしました。

数値から文字列はけっこう面倒ですね。
sprintfあたりも検討してみます。
編集
件名
Re: CのSTRを s3d::String にスマートな変換
名前
コメント
画像添付


投稿修正キー (投稿を修正する時に使います)
画像認証 (右画像の数字を入力) 投稿キー

- WEB PATIO -