>>123
>熟練のプログラマは
>a[i++] = 0;
>とそのまま読んでそのまま挙動を理解する

それなら

if ( flg )
 return "a";
else
 return "b";

もそのまま挙動を理解できるわけで、else不要って主張するのはなぜ?
elseがあると挙動を理解できない?