今度はC言語で

ちょっとねー。。

  char s[256];
… (処理) …
  strncpy(s, "", 256);  // 初期化

こう書いた方が良くありませんか。

  char s[256];
… (処理) …
  memset(s, 0, sizeof(s));  // 初期化

領域を初期化するのに、strncpyは無いでしょう…。それに、固定でstrncpyの引数に256を直接入れているけど、サイズの変更があった時に「どちらかを修正し忘れる」なんてことが起こりそうだし。いや、絶対起こる。

コーディングの大半は、どこの馬の骨が書いたともわからないソースコードに修正・追加することなのだ。今の僕は。 というか、仕事のコーディングなんてそんなもんです。あぁ、最後にシステムがゼロの状態からコーディングをしたのはいつだったか…