そういえば、C++では
struct stat xx;
ではなく
stat xx;
と宣言できるのだが、それをやってしまうと
同スコープでのstat()関数の呼び出しでエラーになるんじゃなかったかな。

個人的には、「Cの標準」に含まれる構造体はC++で使うときも struct をつけるようにしている。
いや、statがCの標準じゃないのは百も承知だが struct tm とかの場合ね。
で、同様に、struct stat のように「Cでも一般的に使える」ものもそうしてる。
POSIX準拠のものとか。