ひとモノBLOG

11 « 2017 / 12 » 01
Sun Mon Tue Wed Thu Fri Sat
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31 - - - - - -
profile
SHOO
  • SHOO
  • 機械系の学生。の割にプログラミングとかのほうが得意だったり。
  • RSS
links
BLOG内検索
Adds by DTI Blog

ひどく遠回りな設計
2007/10/10(水) [23:17:40]

ちょっとわしのHPのアクセス数がウナギ登りでちょっとビビってます。<挨拶
あ、ちょっとって2回使っちゃった。 SHOOです。
なにやら2chやk.inabaさんで取り上げられたみたいです。 感謝感謝です。
そんなわけで、どう考えてもよくわからん第一回目の宿題の回答例です。
回答例は以下から。
問題は「混じっても平気」この情報だけではわかるはずありません。 なんか真剣に解こうとしてくれた人すみません。
この宿題の問題書いたやつは馬鹿です。

import std.stdio;

int main(){
    writef("文字列の出力マスター : ");
    writefln("hello, world");
    writef("整数の出力マスター : ");
    writefln(123);
    writef("実数の出力マスター : ");
    writefln(3.21);
    writefln("混じっても平気 : #34;, 654);
    writefln("%s : %f", "もじもじ文字", 4.56);
    return 0;
}

たぶんこういうことをさせたかったんじゃないかなぁと思います。
たぶんですが。
この筆者バカだ、と思った人は更新時間を見てみるといいのです。 ページの一番下のところにちんまりとあったりするから。

2007/05/14(月)[06:07:33]

朝早くから御苦労さまなんて思っちゃいけませんよ。

ちょっと寝てないだけです。

しかも月曜日の朝ってことは学校があったりしてるはずです。
おそらく眠い目をこすりながら入門記事を書いてちょっとだけ寝てから学校に行って眠い目をこすって研究してたに違いありません。
…この記事書いた筆者は何を考えているんでしょうか。
半年前の自分が僕にはもう理解できません。
いやでも今でもたいして変わらない生活を送ってるな。 自分が理解できません。
どちらにしろ筆者は馬鹿でした。 いや、すみません… そのうち書き直します。

あー、なんかまだほかにもこういう意味不明な部分が多そうだなぁ…



そういえば、D言語の標準ライブラリのPhobosの文字出力がおかしなことになることについて。
これは文字コードがUTF-8の文字列を無理やりコンソールで吐き出しているためこのようになるらしいのです。
これについては perl でも同じ現象が起こるため、何も特別なことではありません。

例) perl でUTF-8の出力をコンソールで見てみる
# --- test.pl (charset=UTF-8)---
print "あいうえお";

実行結果はこちら↓

> perl test.pl
縺ゅ>縺・∴縺

まぁ、どちらにしろ日本語が表示できないのは問題なので、何かしら対策が必要なのは間違いないでしょう。
というわけで、こんな感じにするといいと思います。

> main.exe>output.txt

内容をすべてoutput.txtに書き出してしまいます。
このテキストファイルをUTF-8に対応したエディタで見れば普通に日本語が表示されるはずです。

それでも俺はコンソールに日本語が表示したいんだ!
って言う人はTangoを使うなりk.inabaさんのtxライブラリを使いましょう。
ほかに方法があるとすれば、 import std.windows.charset; として toMBSz("UTF-8の文字列"); で得た文字列をprintfで吐き出すくらいでしょうか…
Windows依存になっちゃいますが…
なんかこのバグっぽいものは本家では改善される気配がないので、あきらめて対処法で処理するのがいいと思います。


rel="prev"<<そろそろTangoに2.0対応版が出てほしいなぁ | ホーム |

この記事に対するトラックバック

この記事のトラックバックURL

この記事に対するコメント

この記事にコメントする

管理者にだけ表示を許可する
| HOME |