#if 0 でコメントアウトを良く使うので

" wrap #if 0 ... #endif
vmap ,c <Esc>'>o#endif<Esc>'<O#if 0<Esc><CR>
vmap ,C "zy<Esc>'<O#if 0<Esc>'>o#else<CR>#endif<Esc>2k<CR>

",c" は visual-block の上下に "#if 0" と "#endif" を追加する。直後のカーソル位置は "#if 0" の行。
",C" は "#endif" のかわりに "#else<空行>#endif" を追加する。直後のカーソル位置は "#else"。さらに、named-yank-buffer に名前 "z" で visual-block を突っ込んでおく。