Если бы было легко работать с числами в компьютерном программировании, было бы еще проще работать с символами. Символы — это простые алфавиты, такие как a, b, c, d …., A, B, C, D, ….., но с исключением. В компьютерном программировании любые однозначные числа, такие как 0, 1, 2, …. и специальные символы, такие как $,%, +, -…. и т. Д., Также обрабатываются как символы и назначаются им в символьном типе. переменная, вам просто нужно поместить их в одинарные кавычки . Например, следующий оператор определяет переменную символьного типа ch, и мы присваиваем ей значение ‘a’ —
char ch = 'a';
Здесь ch — это переменная символьного типа, которая может содержать символ набора символов реализации, а «a» называется символьным литералом или символьной константой. Не только a, b, c, …. но когда любое число, такое как 1, 2, 3 …. или любой специальный символ, такой как!, @, #, #, $, …. хранится в одинарных кавычках , тогда они будут обрабатываться как символьный литерал и могут быть назначены переменной символьного типа, поэтому следующее утверждение является допустимым:
char ch = '1';
Символьный тип данных занимает 8 бит памяти, что означает, что вы можете хранить что угодно в символе, значение ASCII которого находится в диапазоне от -127 до 127, поэтому он может содержать любое из 256 различных значений. Символьный тип данных может хранить любые символы, доступные на вашей клавиатуре, включая специальные символы, такие как!, @, #, #, $,%, ^, &, *, (,), _, +, {,} И т. Д.
Обратите внимание, что вы можете хранить только один алфавит или однозначное число в одинарных кавычках, и более одного алфавита или цифр не допускаются в одинарных кавычках. Таким образом, следующие утверждения недопустимы в программировании на C —
char ch1 = 'ab'; char ch2 = '10';
Ниже приведен простой пример, который показывает, как определять, назначать и печатать символы на языке программирования C —
#include <stdio.h> int main() { char ch1; char ch2; char ch3; char ch4; ch1 = 'a'; ch2 = '1'; ch3 = '$'; ch4 = '+'; printf( "ch1: %c\n", ch1); printf( "ch2: %c\n", ch2); printf( "ch3: %c\n", ch3); printf( "ch4: %c\n", ch4); }
Здесь мы использовали% c для печати символьного типа данных. Когда вышеуказанная программа выполняется, она дает следующий результат —
ch1: a ch2: 1 ch3: $ ch4: +
Побег последовательности
Многие языки программирования поддерживают концепцию Escape Sequence . Когда символу предшествует обратная косая черта (\), он называется escape-последовательностью и имеет особое значение для компилятора. Например, \ n в следующем выражении является допустимым символом и называется символом новой строки —
char ch = '\n';
Здесь символу n предшествует обратная косая черта (\), он имеет особое значение, представляющее собой новую строку, но имейте в виду, что обратная косая черта (\) имеет специальное значение только с несколькими символами. Следующее утверждение не будет передавать никакого значения в программировании на C, и оно будет считаться недопустимым:
char ch = '\1';
В следующей таблице перечислены escape-последовательности, доступные на языке программирования C —
Последовательность побега | Описание |
---|---|
\ т | Вставляет вкладку в текст в этой точке. |
\ б | Вставляет клавишу возврата в текст на этом этапе. |
\ п | Вставляет новую строку в текст в этой точке. |
\р | Вставляет возврат каретки в текст в этой точке. |
\ е | Вставляет ленту новостей в текст на этом этапе. |
\» | Вставляет символ одинарной кавычки в текст на этом этапе. |
\» | Вставляет в текст знак двойной кавычки. |
\\ | Вставляет символ обратной косой черты в текст в этой точке. |
В следующем примере показано, как компилятор интерпретирует escape-последовательность в операторе print —
#include <stdio.h> int main() { char ch1; char ch2; char ch3; char ch4; ch1 = '\t'; ch2 = '\n'; printf( "Test for tabspace %c and a newline %c will start here", ch1, ch2); }
Когда вышеуказанная программа выполняется, она дает следующий результат —
Test for tabspace and a newline will start here
Символы в Java
Ниже приводится эквивалентная программа, написанная на Java. Java обрабатывает символьные типы данных во многом так же, как мы видели в программировании на Си. Тем не менее, Java предоставляет дополнительную поддержку для манипулирования символами.
Вы можете попытаться выполнить следующую программу, чтобы увидеть выходные данные, которые должны быть идентичны результату, сгенерированному в примере C выше.
public class DemoJava { public static void main(String []args) { char ch1; char ch2; char ch3; char ch4; ch1 = 'a'; ch2 = '1'; ch3 = '$'; ch4 = '+'; System.out.format( "ch1: %c\n", ch1); System.out.format( "ch2: %c\n", ch2); System.out.format( "ch3: %c\n", ch3); System.out.format( "ch4: %c\n", ch4); } }
Когда вышеуказанная программа выполняется, она дает следующий результат —
ch1: a ch2: 1 ch3: $ ch4: +
Java также поддерживает escape-последовательности так же, как вы использовали их в C-программировании.
Персонажи в Python
Python не поддерживает какой-либо символьный тип данных, но все символы обрабатываются как строка, представляющая собой последовательность символов. Мы будем изучать строки в отдельной главе. Вам не нужно иметь никакого специального соглашения при использовании одного символа в Python.
Ниже приводится эквивалентная программа, написанная на Python —
ch1 = 'a'; ch2 = '1'; ch3 = '$'; ch4 = '+'; print "ch1: ", ch1 print "ch2: ", ch2 print "ch3: ", ch3 print "ch4: ", ch4
Когда вышеуказанная программа выполняется, она дает следующий результат —
ch1: a ch2: 1 ch3: $ ch4: +
Python поддерживает escape-последовательности так же, как вы использовали их в C-программировании.