16/09/22 12:11:24.09 nnsRF/zz.net
>>795
どうやら >>802 で想像した通り sprintf の仕様らしい。
本体は builtin.c の format_tree 関数らしい。
最初に 512 バイト確保したバッファは大きくはなっても小さくはならない。
実際の文字列に合わせて確保しなおしたらどうなるか >>801 のテストをしてみたよ。
改造前
element before after diff
1 2753 4757 2004
i 2753 22357 19604
sprintf("%d",i) 2753 151283 148530
sprintf("%d",i) + 0 2753 22376 19623
sprintf("%d",i) "" 2753 30174 27421
改造後
element before after diff
1 2753 4757 2004
i 2753 22357 19604
sprintf("%d",i) 2753 30174 27421
sprintf("%d",i) + 0 2753 22373 19620
sprintf("%d",i) "" 2753 30230 27477
あれ? jessie の gawk と比べてメモリの使用量が少ない。
-DDEBUG 付きでコンパイルしたから増えるかと思ったのに。
まあ、それ以外は一応予想通りではある。