Cはクラスがないせいで戻り値が使い物にならん
中でMallocして返すとすぐメモリリークする

文字列や配列を扱う関数は
第一引数と第二引数に結果格納用の配列と最大長を渡すというまだるっこしい作業をせんといかん
Cで言語を学ぶと悪いコーディングの癖がついてしまう