В UTF-16 это будет два байта, а в UTF-32 это будет 4 байта.
В конце концов, в противном случае вы не могли бы провести различие между символом, кодированное значение которого, как оказалось, начиналось с нулевого байта и одного нулевого байта, представляющего U + 0000.
В основном UTF-16 работает в блоках по 2 байта, а UTF-32 работает в блоках по 4 байта. (По общему признанию для символов вне BMP вам нужны два «блока» UTF-16, но принцип все тот же.) Если бы вы реализовали декодер UTF-16, вы бы прочитали два байта за один раз.