C言語で関数内にstatic変数を持ってて、
そこに何か格納してそのポインタを返す、みたいな仕組みなら安心する

何回呼んでも同じポインタが返ってきて、前回の内容は保存されていない
だから必要なら呼んだ側の責任で保存しとかないといけない
家がない子はいない

perlのsub内のmy変数のリファレンスも見かけはそれと似てるけど、
実際の動作が全然違って、実体は動的に生成される
じゃあC言語のauto変数みたいなもんかというと、関数が終わってもスコープを抜けない
かといってずっと存在する訳でもなくて「要らなくなったら消える」というルールが人智を超える

うまく動くように出来てるんだから、怖がらずに飛んでみろ的な