char buf[10] = {0};

とかした場合、buf[1]〜buf[9]まで0で初期化される保証はあったっけ?
構造体の場合と同様に、初期値の指定が無い残りの部分は0で埋められると考えていいのかな?