scholarの日記: Conclusion
日記 by
scholar
string = malloc(i+2);
のときに、
*(string+i+2) = '\0';
に書きこんでしまったのがマズイとのこと(mercenary氏しょーげん)
n文字表示したいなら、バッファはN+1でmemsetでn文字初期化して
"\0"をn+1ってな話です。
でこのお題の場合は要素の数が固定なので
んでもって、やるならmallocで切り取った領域を”*”で埋めたやつを
printf("*s.s”,i,str)で魔にあうとのこと…
(ごめん、printf()の細部はへんだな、man printfで'*'で出力する文字列数を操作するってぇ話です。)
それと void main()じゃなくてint main()してあげるとmain()関数も喜ぶかと思われます…
ってか、私が最初に出したネタがあれだったかな…