>警告無しにできましたが、以下のソースでは失敗してしまいます。

どう失敗したかくらいは書こう。
で、staticの意味くらい調べよう。
staticで確保した領域はただ一つしかないから、二度目の呼び出しで
上書きされてしまう。そのソースの使い方なら、呼び出し元で
別領域にコピーしておく必要がある。