CGIに依存しないPerlの話題一般
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2001/05/31(木) 21:49ID:bKRSBFew・モジュール、オブジェクト指向プログラミング
・Perl6や.NET対応など
・各種GUIツールキット(Perl/Tk, Gtk-Perlなど)
・他言語による拡張(Inline::*, XS, Swigなど)
についてマターリと語り合うスレッドです。
#CGI関連の話題は、なるべく専用スレッドで。
0497名無しさん@お腹いっぱい。
02/01/09 17:11ID:???じゃあそういうモジュール作って〜。
0498名無しさん@お腹いっぱい。
02/01/10 12:46ID:???これはどう?
0499名無しさん@お腹いっぱい。
02/01/10 12:48ID:???0500500GET
02/01/10 12:49ID:???0501名無しさん@お腹いっぱい。
02/01/11 09:42ID:IHYyu2/pCtrl+Cでファイルをクローズして終了したくて、
use sigtrap qw(die normal-signals);
END{close FH;}
のようにしてるけど、アプリケーションエラーになってしまう。(Win2K)
どうすればいいんだ。
0502名無しさん@お腹いっぱい。
02/01/13 10:01ID:???0503名無しさん@お腹いっぱい。
02/01/13 12:29ID:???perldoc sigtrapしてみた?まさにそのまんまの例が載ってるけど(w、
>Die on HUP, INT, PIPE or TERM:
> use sigtrap qw(die normal-signals);
これはdieしたいときの設定。
501がやろうとしているシグナル受信時のハンドラ設定はこんな感じ:
sub my_handler { print "Caught a signal! FH is being closed..."; close FH }
use sigtrap qw(handler my_handler normal-signals);
ちなみに、ハンドラの再設定は、$SIG{...} = \&my_handlerでOK!
終了すべき状況なら、my_hanlderでexit()。
あと、ハンドラ内での再設定も時に有用。(e.g. ALRM)
0504503
02/01/13 12:47ID:???ああ、>>501が言いたかったのは、
「dieでアプリケーションエラーになってしまう。(Win2K)」
ということか、、、逝ってくる。
0505501
02/01/13 15:34ID:???いえいえ、レスありがとです。
そっちの方もやってみたんですけど、 my_handler() の中で exit() するとやっぱり
アプリケーションエラーになってしまうんですよね。まあファイルクローズまでは
逝くので問題ないと言えばないのですが。
う〜ん、とりあえず我慢してこのまま使います^^;
ところでWinではキーボード入力待ちってできないのかなぁ? 他の環境用には
そういうモジュールがあったと思うけど…
0506名無しさん@お腹いっぱい。
02/01/13 20:13ID:???あるような気がするよ。
perl -MCPAN -e shell
でモジュール入れるときに、テストで入力待ちになるじゃん?
0507名無しさん@お腹いっぱい。
02/01/13 20:23ID:???0508名無しさん@お腹いっぱい。
02/01/17 01:21ID:???0509名無しさん@お腹いっぱい。
02/01/17 02:31ID:???0510プ
02/01/17 20:33ID:6zEN00QHsub func1()
{
my $ret = func2();
print "return code -> $ret \n";
}
sub func2()
{
eval {
return 1;
};
# if($@){} # <==
}
これさあ、コメント外すと返却値が無くなんだけど
分かる人居ます?
0511名無しさん@お腹いっぱい。
02/01/17 20:44ID:???0512名無しさん@お腹いっぱい。
02/01/17 20:59ID:???eval内のreturnはevalから抜けるだけだよ。
でreturnした値はevalの返り値になる。
0513プ
02/01/17 21:00ID:6zEN00QHif($@){return 100;}
だとどうなの
0514名無しさん@お腹いっぱい。
02/01/17 21:41ID:???なにがどうなの?
$@に何も入ってないんだから変わらないよ。
たぶんあなたの望んでいる動作は、
sub func2()
{
my $ret = eval {
return 1;
};
return $ret if $ret;
if($@){}
}
こういうことでしょ?
ところで、検証してて思ったけど、
if って評価した値が偽、かつelseがないと評価した値が返るのね。
sub func { if(0){} }
だと 0 が返る。どうでもいいけど。
0515heno
02/01/17 23:08ID:oR04RU/Zみたいのですが、ファイルの変更時刻を得るにはどのようにすれば
良いのでしょうか?
0516名無しさん@お腹いっぱい。
02/01/17 23:33ID:???0517515
02/01/17 23:33ID:???0519名無しさん@お腹いっぱい。
02/01/18 03:40ID:Z2zR15g40520名無しさん@お腹いっぱい。
02/01/18 04:03ID:???http://www.google.com/search?q=descriptorpassing&hl=ja
http://www.google.com/search?sourceid=navclient&q=%83f%83B%83X%83N%83%8A%83v%83%5E%83p%83b%83V%83%93%83O
0521名無しさん@お腹いっぱい。
02/01/18 04:43ID:???0522名無しさん@お腹いっぱい。
02/01/18 05:34ID:???ほれ。
http://search.cpan.org/search?dist=Socket-PassAccessRights
つーか検索ぐらいしろよと。
http://www.google.com/search?q=%22descriptor+passing%22+perl
0523名無しさん@お腹いっぱい。
02/01/18 09:37ID:Z2zR15g4ありがとうございます。
一応[email protected]のアーカイブは漁ってるのでSocket::PassAccessRightsの存在は知っていたのですが、
このモジュールはXS使ったモジュールなんですよね。
でIPC::SysVやIPC::Msgだけでなんとかならないかなー、と試行錯誤した結果質問させてもらった次第です。
でも当たり前に考えてファイルディスクリプタのアドレスっちゅーか番号を得る必要があるのですが、Perlのファイルハンドルはそこらへんが抽象化されてるので現行のPerlだけでは無理なんですよね。
おとなしくSocket::PassAccessRights使います。
あー、ディスクリプタパッシングとは何ぞやってヒト向けに説明付けると、異なるプロセス同士でファイルやソケットハンドルを受け渡しする方法のことです。
0525日下部圭子 ◆ib749tYo
02/01/18 14:40ID:???"/sage/524" wrote in message
news:[email protected]...
> 数十万エントリぐらい256バイトデータがあるのですが、連想配列使うのはマヅイ
ですか?
テストデータを作って実験することをお勧めします。
数百Mもメモリをつんでいるマシンなら、大丈夫だとはおもいますが。
----------------------------------
||//
(@_@) Kusakabe Keiko
----------------------------------
0526名無しさん@お腹いっぱい。
02/01/18 20:54ID:???foreachとか?(笑)
whileで読み込みつつ回すのはだめなんですか?
0527名無しさん@お腹いっぱい。
02/01/18 23:21ID:fgthOeGGfj::void
はどこにあるんでしょうか?
CPANを探しても有りませんでした
0528名無しさん@お腹いっぱい。
02/01/18 23:23ID:???まじかよ!
どんなモジュールなの?
0529heno
02/01/19 13:55ID:WCPxz8Ug0530名無しさん@お腹いっぱい。
02/01/19 15:07ID:???stringsって? 同様って何と?
もっと具体的に書いてください。
0531529
02/01/19 16:02ID:WCPxz8Ugバイナリを読み込んだ後に、その中から表示可能な文字列だけを取り出したいのです。
strings - ファイル内の表示可能な文字列を表示する
ttp://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&lc=1&cmd=&man=strings&dir=jpman-4.4.0%2Fman§=0
0532名無しさん@お腹いっぱい。
02/01/19 16:38ID:CWyCsorlと同様な処理をPerlで作ればいいわけだが、
割合簡単そうですね
File::strings とかあるかなってCPAN見たけどなかった
0533529
02/01/19 17:21ID:WCPxz8Ugなるほど (^_^ ;;)
ここのあたりをPerlで実装すれば良さそうですね。
#define ISSTR(ch) (isalnum(ch) || ispunct(ch) || \
(isspace(ch) && (!iscntrl(ch) || ch == '\t')) || \
(isascii(ch) && isprint(ch)))
#私も始め strings() という関数があるのではないかと思っていました・・・
0534529
02/01/19 18:22ID:???思いましたが、今回は個別に置換 (s/\x00// 等) して済ませてしまい
ました。
コメントありがとうございました。
0535名無しさん@お腹いっぱい。
02/01/25 03:32ID:llLEjDhTwindoze上でPerl/Tk使う場合、日本語はsjisじゃないと駄目ですよね。
でも、日本語の文字列処理はeucじゃないと駄目な場合がありますよね。
描画と文字列処理でファイルを分ければ問題なしですが、
同一のファイルで描画と文字列処理を文字化けせずに行う方法知ってたら
お願いします。
ファイルを euc で書いて、Perl/Tk で使う日本語部分だけ Jcode.pm を
使って変換してみたりしましたが、駄目でした。
(どうも、Perl/Tkについての理解が足りない気がする…)
もし、具体例が必要でしたら書きます。
環境は、Win98SE, ActivePerl 5.6.1(631), Perl/Tk 800.023
Jcode.pm 0.79
0536535
02/01/25 03:59ID:???逝ってきます。
0537名無しさん@お腹いっぱい。
02/01/27 02:12ID:Sw8wyViQhttp://www.thinkgeek.com/stuff/apparel/321a.shtml
0538名無しさん@お腹いっぱい。
02/01/27 09:55ID:???そうかなぁ?なんか色合いがタクっぽくてやだなぁ。
もっと粋な色使いにして( ゚д゚)ホスィ…
0539名無しさん@お腹いっぱい。
02/01/28 09:32ID:???Child Processの方は子供に欲しいぞ。誰かクレ。
0540名無しさん@お腹いっぱい。
02/01/31 22:34ID:???0541名無しさん@お腹いっぱい。
02/02/02 11:12ID:+ALef/KRの使い方わかるかたいますか?
ttp://www.perl.com/CPAN/modules/by-module/BSD/
time()を使うときに精度UPできるようなのですが、
readme読んでも使い方がわかりません・・・・。
0542名無しさん@お腹いっぱい。
02/02/02 11:23ID:???使い方は組み込み関数のtimes()と同じだよ。
0543541
02/02/02 11:33ID:+ALef/KRじゃ、use BSD::resource;
とだけ宣言して、普通にtimes()を使えばいいってことですか。
0544名無しさん@お腹いっぱい。
02/02/02 11:35ID:toL+Z2MW( 人>>538 _)
|ミ/ ー◎-◎-) そうかなぁ?なんか色合いがタクっぽくてやだなぁ。
(6 (_ _) ) もっと粋な色使いにして( ゚д゚)ホスィ…
_| ∴ ノ 3 ノ
(__/\_____ノ
/ ( || ||
[]__| |さくら命 ヽ
|[] |__|_538______)
\_(__)三三三[□]三)
/(_)\::::::::::::::::::::::::/
(_____):::::/:::::::/
(___[]_[]
0545名無しさん@お腹いっぱい。
02/02/02 11:42ID:???use BSD::Resource qw(times);
($user, $system, $child_user, $child_system) = times();
0546名無しさん@お腹いっぱい。
02/02/02 17:48ID:Ew98jRS/http://search.cpan.org/doc/MARCEL/Exporter-Simple-0.12/lib/Exporter/Simple.pm
0547541
02/02/02 20:05ID:+ALef/KRありがとうございました。
でも、timesってopen2で処理してもらってる時間は計測してくれないのね。
鬱市
0548名無しさん@お腹いっぱい。
02/02/02 20:16ID:2Jw7igNJAの2乗=Bの2乗+Cの2乗ですが、
BとCの値を入れて計算が終わったとして、
ルートAの出し方がわかりません。
お助け下さいませ・・・
0549名無しさん@お腹いっぱい。
02/02/02 20:23ID:BTZXmzNssqrt(expr) で平方根。
0550名無しさん@お腹いっぱい。
02/02/02 20:40ID:2Jw7igNJありがとうございます。うまくいきました!
0551名無しさん@お腹いっぱい。
02/02/02 22:15ID:lgb4aC0Kそんなんでいいんかい?
perkの問題じゃなくて数学の問題だろ
0552名無しさん@お腹いっぱい。
02/02/02 22:35ID:2Jw7igNJいえ、CGIに依存しないPerlのお話だったんです。
sqrt関数がわかんなかったんです。
0553デフォルトの7子
02/02/03 00:54ID:juTMfXhdでperl APIを使用したCプログラミングをしようと思っています。
Cのソース上で
#include <perl.h>し
VC付属のコンパイラ CL.EXEで
>cl -I\Perl\lib\CORE perltest.c
とすると以下のようなエラーが出てしまいます。
おそらくperl.hで名前解決が出来てないためだと思うのですが、
ご存知の方アドバイスをよろしくお願いします。
**************************
\Perl\lib\Core\perl.h(797) : warning C4273: 'win32_strerror' :
しています。DLL にエクスポートされていると仮定します。
\Perl\lib\Core\dosish.h(111) : warning C4005: 'Stat' : マクロが再定
\Perl\lib\Core\win32.h(305) : 'Stat' の前の定義を確認し
\Perl\lib\Core\perl.h(1755) : error C2061: 構文エラー : 識別子 'pe
ンタックスエラーを起こしました。
\Perl\lib\Core\perl.h(1755) : error C2059: 構文エラー : ';'
\Perl\lib\Core\perl.h(1756) : error C2061: 構文エラー : 識別子 'pe
スエラーを起こしました。
\Perl\lib\Core\perl.h(1756) : error C2059: 構文エラー : ';'
\Perl\lib\Core\perl.h(1757) : error C2061: 構文エラー : 識別子 'pe
エラーを起こしました。
\Perl\lib\Core\perl.h(1757) : error C2059: 構文エラー : ';'
\Perl\lib\Core\perl.h(1758) : error C2061: 構文エラー : 識別子 'pe
ラーを起こしました。
\Perl\lib\Core\perl.h(1758) : error C2059: 構文エラー : ';'
\Perl\lib\Core\perl.h(2246) : warning C4273: 'win32_crypt' : DL
ています。DLL にエクスポートされていると仮定します。
\Perl\lib\Core\perl.h(2356) : warning C4273: 'win32_environ' :
しています。DLL にエクスポートされていると仮定します。
\Perl\lib\Core\perlvars.h(22) : error C2061: 構文エラー : 識別子 '
ックスエラーを起こしました。
\Perl\lib\Core\perlvars.h(22) : error C2059: 構文エラー : ';'
\Perl\lib\Core\perlvars.h(39) : error C2061: 構文エラー : 識別子 '
タックスエラーを起こしました。
\Perl\lib\Core\perlvars.h(39) : error C2059: 構文エラー : ';'
0554デフォルトの7子
02/02/03 01:49ID:juTMfXhd自己レスです
結局コマンドラインをあきらめてVC
のIDEでインクルードパスを
C:\Perl\lib\COREにしたらあっさり出来ました。
しかし今度はたったこれだけのソースがメモリエラー
実行できず・・・・
道は遠いなあ
#include <EXTERN.H>
#include <perl.h>
static PerlInterpreter *my_perl;
int main(){
SV *pvalueSV;
pvalueSV = newSViv(132);
return 1;
}
0555名無しさん@お腹いっぱい。
02/02/03 01:53ID:+IXT+7Wcがんばれ!
0556デフォルトの7子
02/02/03 03:11ID:NWocp2usありがとう!
頑張ってる!
でも
newSViv(132);
なぜこれがエラーになるのかがわからんです・・・・
参考ソースもすくないね・・perlAPIは・・
0557名無しさん@お腹いっぱい。
02/02/03 10:17ID:GN3WrqUChttp://www.t.ring.gr.jp/pub/lang/perl/CPAN/modules/00modlist.long.html#ID22_MicrosoftW
0558名無しさん@お腹いっぱい。
02/02/03 11:46ID:???インタープリタの初期化しないと駄目だ。
0559singleton
02/02/04 13:32ID:8LIPl4QIforeach (1..3) {
print Foo->getInstance(), "\n";
print Singleton->getInstance(), "\n";
}
package Singleton;
my %instances;
sub getInstance {
my $class = shift;
return $instances{$class} ||= $class->_new();
}
sub _new {
return bless {}, shift;
}
package Foo;
use base q/Singleton/;
-----------
Foo=HASH(0x80efc1c)
Singleton=HASH(0x80efc34)
Foo=HASH(0x80efc1c)
Singleton=HASH(0x80efc34)
Foo=HASH(0x80efc1c)
Singleton=HASH(0x80efc34)
0560名無しさん@お腹いっぱい。
02/02/04 14:28ID:???面倒くさいってアンタ…数文字だけタイプ数が変わるだけじゃん。
車輪の再発明をしたいならせめてもっとマシな物を作らないと。
例えば、Class::Singletonの_new_instanceを
sub _new_instance {
my $instance = bless { }, shift;
$inctance->_init(@_)
return $instance;
}
とでもすれば、_init()さえ定義すれば良いようになるだろ?
0561名無しさん@お腹いっぱい。
02/02/05 16:41ID:slTopwFT面倒って意味。
それに、Class::Singletonだと、$YourSingletonClass::_instanceでカプセルかが
破壊できちゃうのが何となく嫌。
レキシカル変数だと大丈夫だよね。
あと、_initは貼る時に削っただけでやってます。
0562名無しさん@お腹いっぱい。
02/02/12 23:36ID:gr8exDbOなどしてカレントディレクトリのモジュールを取り込んでいるケースに
違うディレクトリから
perl /html/test.cgi
などしてスクリプトを実行使用とすると、
カレントディレクトリが違うので
can't locate ./jcode.pl at /html/test.cgi line 2
などとなりますよね。
このような場合はどのようにして実行できますでしょうか?。
perl /html/test.cgi -I/html/
としてみても結果は同じでした。
0563名無しさん@お腹いっぱい。
02/02/12 23:40ID:???フルパス。
0564名無しさん@お腹いっぱい。
02/02/12 23:41ID:???絶対パスで指定する。
0565564
02/02/12 23:42ID:???0566undef
02/02/13 07:31ID:???あ、中学校の範囲じゃない?
0567562
02/02/13 08:07ID:2kRNjnhVレスありがとうございます。
すみません。少々説明不足でした。
もちろんフルパスでの指定というのがありますが
ソースコードを変更しないで実行したいのです。
perlスクリプトの方ではなくWEBサーバを書いているので。
Apacheなんかだとperlがどこにあってもカレントディレクトリの
スクリプトを実行できますよね。
0568名無しさん@お腹いっぱい。
02/02/13 10:51ID:???フルパスとか相対パス指定なんてダサいことしてるからそーなる。
use lib '/path/to/lib';
require 'jcode.pl';
ってすれば万事休す。もしくは
use FindBin;
use lib "$FindBin::Bin/../lib";
require 'jcode.pl';
な。とりあえず絶対パスはなんて言ってる奴は*論外*。クソな配布スクリプトを参考になんかしてると、一緒に腐っちゃうぜ。
なんなら .htaccessで
SetEnv PERL5LIB /path/to/lib
で済ましても良いし。
0569名無しさん@お腹いっぱい。
02/02/13 11:01ID:RcZE7nBSプログラム言語ができても国語ができないようで。残念。
0570名無しさん@お腹いっぱい。
02/02/13 13:37ID:???0571名無しさん@お腹いっぱい。
02/02/13 23:03ID:???0572名無しさん@お腹いっぱい。
02/02/13 23:21ID:???0573名無しさん@お腹いっぱい。
02/02/13 23:22ID:???結局絶対パス。大したこと無いね。
0574名無しさん@お腹いっぱい。
02/02/14 13:12ID:???スレ読んでる?
> use FindBin;
> use lib "$FindBin::Bin/../lib";
0575名無しさん@お腹いっぱい。
02/02/14 13:15ID:???0576名無しさん@お腹いっぱい。
02/02/14 20:23ID:???0577環境変数
02/02/14 23:47ID:s7CAF/TSプログラムは、どうすれば良いのでしょうか?
たとえば、
MS-DOSプロンプトで、「SET」とすると環境変数が出てきます。-(1)
次に、そのまま、何らかのPerlプログラムを実行。
再び、そのプロンプトで、「SET]で環境変数を表示。-(2)
この(1)と(2)で違う状態にしたいのです。(Perlで環境変数を変える)
よろしくお願いします。
0578名無しさん@お腹いっぱい。
02/02/15 00:14ID:???確か無理。
0579名無しさん@お腹いっぱい。
02/02/15 19:40ID:8vhXaga7自分、結構好きだったりするんですけどね、こいうの。
$date_time = sprintf "%04d/%02d/%02d %02d:%02d:%02d\n", sub{$_[5]+1900,$_[4]+1,@_[3,2,1,0]}->(localtime);
0580名無しさん@お腹いっぱい。
02/02/15 19:44ID:???元々C言語な人なんで複数行+sprintfですな。俺は。
0581名無しさん@お腹いっぱい。
02/02/15 20:06ID:???自分のサイトでも載せてるし、実際に使ってます、そんなの。
0582名無しさん@お腹いっぱい。
02/02/15 20:18ID:???そうですか、自分もCからPerlに入ったんで最初は違和感あったんですけど
いちいち中間変数を考えるのが面倒になったときこっちが便利になってきました。
>>581
はい、おっしゃるとおり、そんなのです。
他に使っている人がいて安心しました。
そんなん蛇道とかいわれなくてよかったです。
0583581
02/02/15 23:26ID:???誤解があったようなので。
> そんなの
「そういうの」って言った方が良かったね。
悪意はまったく無いので。スマソ
ちなみに私はPerl厨なので、俗に言うトリッキーな書き方が大好きです。
0584賛成の反対の反対ナノだ!
02/02/16 02:29ID:???のでわたしは使いません。
0585582
02/02/16 10:22ID:???いぇいぇ、わざわざすみませんです。
Perlコードのパズル感覚は私も面白くてはまるたちです。
>>584
やはり、そいった御意見もありますよね、ふむふむ。
ここは、使い分けということですよね。
処理時間が短さが重要な処理で、かつ大量の日付表示処理の繰り返し
とかやる場合は、オーバーヘッドの少ない方法を使うわけですね。
ちょっとしたレポートに作成日付をつけるぐらいの処理だったら
>>579に示した方法でもいいですよね。
0586名無しさん@お腹いっぱい。
02/02/16 11:37ID:???型変換は必要ないし0fillとか桁削りも簡単。
0587名無しさん@お腹いっぱい。
02/02/16 13:05ID:???手動フォーマットよりsprintf()の方が圧倒的に高速だが…俺のやり方がまずいんだろうか。
それともオーバーヘッドの意味が俺の考えている小物と違うのかな。
WinME perl5.6.1 ActivePerl 631
メモリ320MB CPU Duron 800MHz
#!perl -w
use Benchmark;
my @tm = localtime time;
sub timef1{
($sec, $min, $hour, $day, $mon, $year) = @tm;
$year += 1900;
$mon++;
$_ = sprintf '%d/%02d/%02d %02d:%02d:%02d', $year, $mon, $day, $hour, $min, $sec;
}
sub timef2{
($sec, $min, $hour, $day, $mon, $year) = @tm;
$year += 1900;
$mon++;
($mon < 10) and ($mon = "0$mon");
($day < 10) and ($day = "0$day");
($hour < 10) and ($hour = "0$hour");
($min < 10) and ($min = "0$min");
($sec < 10) and ($sec = "0$sec");
$_ = "$year/$mon/$day $hour:$min:$sec";
}
timethese 100000 => {
sprintf => \&timef1,
handformat => \&timef2,
};
__END__
結果
Benchmark: timing 100000 iterations of handformat, sprintf...
handformat: 6 wallclock secs ( 5.38 usr + 0.00 sys = 5.38 CPU) @ 18587.36/s (n=100000)
sprintf: 1 wallclock secs ( 0.82 usr + 0.00 sys = 0.82 CPU) @ 121951.22/s(n=100000)
0588名無しさん@お腹いっぱい。
02/02/16 13:06ID:???0589名無しさん@お腹いっぱい。
02/02/16 21:23ID:???といった文字列から、別のファイルに保存してある
http://hoge.hoge.jp/hoge/
といった文字列にマッチしていればそのマッチした部分を削除
してくれるような操作をしたいのですが、どうすればうまく行くでしょうか?
= 置換したい文字列が動的に変化する時、":" や "/"のエスケープは
どうするとよいのでしょうか?
0590名無しさん@お腹いっぱい。
02/02/16 22:17ID:???0592589
02/02/16 22:43ID:SkVhVlKIする場合、今まではエディタを使っていたのですが、perl
だとどうするのだろうかと・・・
0593名無しさん@お腹いっぱい。
02/02/16 23:04ID:???0594589
02/02/16 23:25ID:???あれ?
open LIST, "tmp.list";
while (<LIST>) {
s/$hoge//;
print;
}
これで素直に動きました(汗)
ありがとうございました・・・
0595名無しさん@お腹いっぱい。
02/02/16 23:27ID:???$hogeは?
0596名無しさん@お腹いっぱい。
02/02/17 00:11ID:???sprintfが重いってのはここを含めた一部の馬鹿板に於いて定説
ベンチも取らずに講釈並べるのが特徴です
>>584は馬鹿板育ちだからそっとしてあげよう
■ このスレッドは過去ログ倉庫に格納されています