В принципе, для каждого строкового объекта требуются постоянные 20 байтов для данных объекта.Буфер требует 2 байта на символ.Оценка использования памяти для строки в байтах: 20 + (2 * длина).Итак, обычно Память в CLR для этой строки: 22 байта
Однако, пока мы передаем или отправляем эту строку на другой конец или для любого другого использования, нам не нужно столько памяти (нам никогда не нужны 20 байтовдля данных объекта).Таким образом, это зависит от типа кодировки, который вы выбираете, когда вы его используете.
Для кодировки по умолчанию для символа потребуется 1 байт.
Таким образом, для кодировки по умолчанию ответ равен 1 байту..
Вы можете проверить с этим кодом:
Encoding.Default.GetBytes("a"); //It will give you a byte array of size 1.
Encoding.Default.GetBytes("ABC"); //It will give you a byte array of size 3.