みたいなのをCppCheckに掛けると Division by result of sizeof(). strncpy() expects a size in bytes, did you intend to multiply instead? とワーニングが出ます。NELEMS(dst)を止めて10と書けば消えるのですが、ど う見ても退化していると思うのでしたくありません。消し方ってありますか?
> Division by result of sizeof() ですから、sizeof()の結果を割り算していることに対する警告ですよね。 strncpyは「対象がchar*ならバイト数/wchar_t*なら文字数」とかいう訳でもなくただのchar*相手の関数なのですから、配列サイズではなく配列長を求める意味がありません。 単純にsizeof(dst)を渡せばいい話です。