新規記事投稿 フォロー記事投稿 記事のキャンセル
From: にあ <nir@mxa.meshnet.or.jp>
Subject: Re: キャンセルコードの文字化け
Date: 1998/08/11 02:37:27
Reference: mesh.forum.3/00506

8月7日に、Kuniaki Noguchiさんは書きました。

>投稿完了のところでキャンセルコードのフィールドに出てくる文字だけが
>文字化けします。
>たとえばこんな風に出ます。
>
>    ケヤ 2147483647

>>本来暗号化パスワードが書き込まれるはずの所には何が書き込まれていますか?
>>その他のフィールドは正常ですか?
>
>  ノ2147483647 
>
>こんなのがいろいろ出ます。
>
ほほう、これは面白い。(なんて言ったら怒られるかな)
キャンセルコードの生成に使っている乱数発生機構がおかしくなっているようですね。

使っている OS の種類、ヴァージョンは何ですか?
# Unix だったら uname -a で分かります。
また、perl のヴァージョンは何ですか?
# これは、perl -v で分かります。

取りあえず、コマンドラインから以下のような perl のプログラムを実行すると
どんな出力が得られますか?

#!/usr/local/bin/perl

srand(0); &rand_print;
srand(1); &rand_print;

exit(0);

sub rand_print {
	$i = int($d = rand(26));
	printf("%10lf, %2d, '%s'\n", $d, $i, pack("C", 65 + $i));
}

まともに動いていれば、

  0.000149,  0, 'A'
 13.360622, 13, 'N'

の様な感じになります。
# 数は違うでしょうけど。