Когда бы вы использовали строки вместо символов? - PullRequest
1 голос
/ 02 марта 2011

Когда уместно использовать строки вместо символов? А как же наоборот?

1 Ответ

4 голосов
/ 02 марта 2011

Строки и символы представляют принципиально разные понятия.

Символ - это единая неделимая единица, представляющая своего рода глиф.При работе с персонажем вам гарантированно будет один персонаж, не больше или не меньше.Функции, которые работают с персонажами, лучше всего подходят для случаев, когда вы знаете, что это правда.Например, если вы пишете «Hangman» и хотите обработать догадку пользователя, для функции, которая обрабатывает догадку, будет иметь смысл взять символ, а не строку, поскольку вы точно знаете, что входные данные для этой функциивсегда должна быть одна буква.

Строка - это составной тип, образованный путем взятия нуля или более символов и их объединения.Строки обычно используются для представления текста, который может иметь произвольную длину, включая нулевую длину.Функции, которые работают со строками, лучше всего подходят для случаев, когда известно, что ввод состоит из букв, но неясно, сколько букв будет.

Еще один вариант - использовать массив фиксированной длины.символов, что идеально подходит для ситуации, когда вы знаете, что у вас есть точно k символов для некоторого k.Это не очень подходит, но это еще один вариант.

Короче говоря, используйте символы, когда вы знаете, что вам нужно работать с фрагментом текста, длина которого составляет всего один глиф.Используйте строки, когда вы не знаете длину ввода заранее.Используйте массивы фиксированного размера, когда вы точно знаете, что вход имеет определенную длину.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...