Разное

C идентификаторы: Ключевые слова и идентификаторы в C++ | Уроки С++

Содержание

C#: синтаксис

Синтаксис и другие основные моменты  C#.

Идентификаторы (Identifiers)

Идентификаторы — имена классов, методов, переменных и т.д. Они должны состоять из юникод символов и начинаться с буквы или нижнего подчеркивания. Идентификаторы в C# чувствительны к регистру. По соглашению параметры, локальные переменные и частные (private) свойства и методы пишутся в camel case (слова пишутся слитно, без пробелов и нижних подчеркиваний, каждое новое слово кроме первого с заглавной буквы, например, myVariavle), все остальные идентификаторы — в стиле Pascal case (тоже самое, что и camel case, только первое слово с заглавной, например, MyClass).

Ключевые слова (Keywords)

Ключевые слова — имена, зарезервированные компилятором, которые нельзя использовать в качестве идентификаторов. Их полный список (76):

  • abstract
  • as
  • base
  • bool
  • break
  • byte
  • case
  • catch
  • char
  • checked
  • class
  • const
  • continue
  • decimal
  • default
  • delegate
  • do
  • double
  • else
  • enum
  • event
  • explicit
  • extern
  • false
  • finally
  • fixed
  • float
  • for
  • foreach
  • goto
  • if
  • implicit
  • in
  • int
  • interface
  • internal
  • is
  • lock
  • long
  • namespace
  • new
  • null
  • object
  • operator
  • out
  • override
  • params
  • private
  • protected
  • public
  • readonly
  • ref
  • return
  • sbyte
  • sealed
  • short
  • sizeof
  • stackalloc
  • static
  • string
  • struct
  • switch
  • this
  • throw
  • true
  • try
  • typeof
  • uint
  • ulong
  • unchecked
  • unsafe
  • ushort
  • using
  • virtual
  • void
  • while

Если необходимо в качестве идентификатора использовать ключевое слово, это можно сделать поставив перед ключевым словом символ @, например, @Class. При этом символ @ не будет являться частью идентификатора и @myVariable будет эквивалентно myVariable.

Существуют также контекстные ключевые слова (Contextual keywords), которые в рамках определенного контекста становятся ключевыми и не могут быть использованы как идентификаторы, но вне своего контекста они могут быть идентификаторами даже без символа @. К ним относятся:

  • add
  • ascending
  • async
  • await
  • by
  • descending
  • dynamic
  • equals
  • from
  • get
  • global
  • group
  • in
  • into
  • join
  • let
  • on
  • orderby
  • partial
  • remove
  • select
  • set
  • value
  • var
  • where
  • yield

Литералы (Literals)

Литералы — простейшие фрагменты данных, используемые в коде программы (например, в выражении var myVariable = 12;, «12» — литерал).

Знаки пунктуации (Punctuators)

Знаки пунктуации используются для разграничения структуры программы (это, например, { } ;). Фигурные скобки группируют несколько инструкций (statement) в блок инструкций (statement block). Точка с запятой разделяет не блочные инструкции (инструкцию можно разбивать на несколько строк).

Операторы (Operators)

Операторы преобразуют и комбинируют выражения. Операторы обозначаются символами, например, . ( ) * + =. Точка обычно отделяет дробную часть в числовых литералах (десятичная точка) или используется как разделитель пространств имен, классов и их членов. Круглые скобки используются при объявлении и вызове методов. Знак равенства выполняет присваивание, двойной знак равенства — сравнение

Комментарии могут быть однострочными и многострочными. Однострочный комментарий начинается с двойного слэша и продолжается до конца строки. Многострочный начинается с /* и заканчивается */.

Имена идентификаторов | Microsoft Docs



  • Чтение занимает 2 мин

В этой статье

Идентификатор — это имя, которое вы присваиваете типу (классу, интерфейсу, структуре, делегату или перечислению), члену, переменной или пространству имен.An identifier is the name you assign to a type (class, interface, struct, delegate, or enum), member, variable, or namespace. Допустимые идентификаторы должны соответствовать следующим правилам.Valid identifiers must follow these rules:

  • Идентификатор должен начинаться с буквы или _.Identifiers must start with a letter, or _.
  • Идентификаторы могут содержать буквенные символы Юникода, десятичные числа, символы соединения Юникода, несамостоятельные знаки Юникода или символы форматирования Юникода.Identifiers may contain Unicode letter characters, decimal digit characters, Unicode connecting characters, Unicode combining characters, or Unicode formatting characters. Дополнительные сведения о категориях Юникода см. в разделе База данных категорий Юникода.For more information on Unicode categories, see the Unicode Category Database.
    Вы можете объявить идентификаторы, соответствующие ключевым словам C#, с помощью префикса идентификатора @.You can declare identifiers that match C# keywords by using the @ prefix on the identifier. @ не является частью имени идентификатора.The @ is not part of the identifier name. Например, @if объявляет идентификатор с именем if.For example, @if declares an identifier named if. Эти буквальные идентификаторы предназначены главным образом для взаимодействия с идентификаторами, объявленными в других языках.These verbatim identifiers are primarily for interoperability with identifiers declared in other languages.

Полное определение допустимых идентификаторов см. в разделе об идентификаторах в спецификации языка C#.For a complete definition of valid identifiers, see the Identifiers topic in the C# Language Specification.

Соглашения об именахNaming conventions

В дополнение к правилам для идентификаторов существует ряд соглашений об именовании, используемых в API-интерфейсах .NET.In addition to the rules, there are a number of identifier naming conventions used throughout the .NET APIs. По соглашению программы C# используют PascalCase для имен типов, пространства имен и всех открытых членов.By convention, C# programs use PascalCase for type names, namespaces, and all public members. Кроме того, часто используются следующие соглашения.In addition, the following conventions are common:

  • Имена интерфейсов начинаются с заглавной буквы I.Interface names start with a capital I.
  • Типы атрибутов заканчиваются словом Attribute.Attribute types end with the word Attribute.
  • Типы перечисления используют единственное число для объектов, не являющихся флагами, и множественное число для флагов.Enum types use a singular noun for non-flags, and a plural noun for flags.
  • Идентификаторы не должны содержать два последовательных символа _.Identifiers should not contain two consecutive _ characters. Эти имена зарезервированы для идентификаторов, созданных компилятором.Those names are reserved for compiler generated identifiers.

Спецификация языка C#C# Language Specification

Дополнительные сведения см. в спецификации языка C#.For more information, see the C# Language Specification. Спецификация языка является предписывающим источником информации о синтаксисе и использовании языка C#.The language specification is the definitive source for C# syntax and usage.

См. такжеSee also

C++. Идентификаторы, литералы, зарезервированные слова.



Поиск на других ресурсах:

1. Какое назначение идентификаторов в C++? Правила создания идентификаторов.

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

В языке C++ строчные и прописные символы рассматриваются как разные символы (в отличие от языка Паскаль и других языков).

Примеры идентификаторов:

x
max
Delta
my_method
w23x5

2. Какие элементы языка C++ запрещается использовать в качестве идентификатора?

В языке C++ нельзя использовать в качестве идентификаторов ключевые слова.

Список ключевых слов языка C++:

asm           auto           bool              break
case          catch          char              class
const         const_class    continue          default
delete        do             double            dinamic_cast
else          enum           explicit          export
extern        false          float             for
friend        goto           if                inline
int           long           mutable           namespace
new           operator       private           protected
public        register       reinterpret_cast  return
short         signed         sizeof            static
static_cast   struct         switch            template
this          throw          true              try
typedef       typeid         typename          union
unsigned      using          virtual           void
volatile      wchar_t        while

3. Что собой представляют литералы в языке C++?

Литералы – это фиксированные значения (константы), которые не могут быть изменены программой в процессе выполнения. Литералы (константы) могут иметь любой базовый тип данных. Способ представления каждой константы зависит от ее типа.

Примеры литералов:

23
-8.45
's'
L'A'
12.345F
4.3e-8
4.3E-8
1300L



4. Каким образом компилятор распознает целочисленные литералы?

Компилятор C++ пробует определить тип литерала самостоятельно по его значению.

Например, для 16-разрядной среды:

  • число 23 связывается с типом int;
  • число 300929 связывается с типом long int.

Если нужно принудительно установить значение long int, тогда к литералу нужно прибавить суффикс ‘L‘ или ‘l‘. Например:

20L
-300l

Если нужно установить значение литерала как беззнакового (с префиксом unsigned), тогда к литералу добавляется суффикс ‘U‘ или ‘u‘. Например:

1500u  // тип unsigned long int
1500U  // unsigned int
1500u  // unsigned int
1500ul // unsigned long int
1500UL // unsigned long int

5. Каким образом компилятор распознает литералы с плавающей запятой?

По умолчанию, все константы с плавающей запятой имеют тип double. Если нужно установить тип float, тогда к константе нужно прибавить суффикс ‘f‘ или ‘F‘. Если нужно установить тип long double, тогда к константе прибавляется суффикс ‘l‘ или ‘L‘.

Например:

9000.0009f        // float
8888.777F         // float
111.222           // double
0.33L             // long double
-56785757574.33l  // long double

6. Каким образом в C++ записываются шестнадцатеричные и восьмеричные литералы?

Часто в программах целесообразным есть использование шестнадцатеричной или восьмеричной систем исчисления вместо десятичной. Запись литералов в шестнадцатеричной или восьмеричной системах исчисления используется только для целочисленных типов.

В восьмеричной системе исчисления используются цифры от ‘0‘ до ‘7‘.

В шестнадцатеричной системе исчисления используются цифры от ‘0‘ до ‘9‘ и буквы от ‘А‘ до ‘F‘.

Восьмеричные литералы начинаются с префикса ‘0‘.

Шестнадцатеричные литералы начинаются с префикса ‘0x‘ или ‘0X‘.

Например:

010    // Число 10 в восьмеричной системе исчисления
055    // восьмеричная система исчисления
0x10   // шестнадцатеричная система исчисления
0XAFD  // шестнадцатеричная система исчисления

7. Что собой представляют управляющие последовательности символов?

В языках программирования существует ряд констант, которые невозможно ввести в исходный текст программы непосредственно с клавиатуры. Например, символ новой строки.

Кроме того, некоторые символы, такие как одинарные или двойные кавычки, в C++ имеют специальное назначение. Поэтому, их иногда, невозможно ввести напрямую.

Во избежание этой проблемы, в языке C++ (да и в других языках) введены так называемые управляющие последовательности символов. Эти последовательности заменяют символы, которые имеют специальное назначение или символы, которые невозможно ввести с клавиатуры напрямую.

Управляющие символьные последовательности языка C++:

\b - возврат на одну позицию
\f - переход к началу следующей страницы
\n - новая строка
\r - возврат каретки
\t - горизонтальная табуляция
\" - двойная кавычка
\' - одинарная кавычка
\\ - обратная дробная черта
\v - вертикальная табуляция
\a - звуковой сигнал
\? - вопросительный знак
\N - восьмеричная константа (где N - сама восьмеричная константа)
\x - шестнадцатеричная константа (где N - сама шестнадцатеричная константа)

Пример описания переменной, в которую заносится символ управляющей последовательности.

char c1, c2;
c1 = '\\';   // обратная дробная черта
c2 = '\"';   // двойная кавычка
c1 = '\23';  // 23 в восьмеричной системе исчисления
c2 = '\x5F'; // 5F в шестнадцатеричной системе исчисления

 


Связанные темы


 

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

Идентификаторы

Идентификаторы — это имена переменных, функций и меток, используемых в программе. Идентификатор вводится в объявлении переменной или функции, либо в качестве метки оператора. После этого его можно использовать в последующих операторах программы. Идентификатор — это последовательность из одной или более латинских букв, цифр и символов подчеркивания, которая начинается с буквы или символа подчеркивания. Допускается любое число символов в идентификаторе, однако только первые 32 символа рассматриваются компилятором языка Си как значащие. Если первые 32 символа у двух идентификаторов совпадают, компилятор языка Си рассматривает их как один и тот же идентификатор. Компоновщик также распознает 32 символа в именах глобальных переменных.

В идентификаторах версии 1.5 СП ТС допускается знак $, однако, идентификатор не может с него начинаться.

Компиляторы языка Си в СП MSC и СП ТС имеют опцию, позволяющую изменять число значащих символов в идентификаторах.

При использовании символов подчеркивания в качестве первых символов идентификаторов необходимо соблюдать осторожность, поскольку такие идентификаторы могут совпасть (войти в конфликт) с именами «скрытых» библиотечных функций.

Примеры идентификаторов:

temp1

top_of_page

skip12

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

add

ADD

Add

aDD

В СП ТС, однако, существует опция компиляции, позволяющая рассматривать в именах внешних переменных буквы верхнего и нижнего регистров как совпадающие.

Компилятор языка Си не допускает использования идентификаторов, совпадающих по написанию с ключевыми словами.

Например, идентификатор while недопустим (однако идентификатор While—допустим).

Поделитесь на страничке

Следующая глава >

Алфавит, идентификаторы, ключевые слова и константы C++

В тексте на любом естественном языке можно выделить четыре основных элемента: символы, слова, словосочетания и предложения. Подобные элементы содержит и алгоритмический язык, только слова называют лексемами (элементарными конструкциями), словосочетания — выражениями, а предложения — операторами. Лексемы образуются из символов, выражения — из лексем и символов, а операторы — из символов, выражений и лексем. В этой записи рассмотрен алфавит языка программирования C++ и его лексемы.

Алфавит C++

Алфавит C++ включает:

  • прописные и строчные латинские буквы и знак подчеркивания;
  • арабские цифры от 0 до 9;
  • специальные знаки: ? { } , ¦ [ ] ( ) + — / % * . \ ‘ : ? < = > ! & # ~ — ; ^
  • пробельные символы: пробел, символы табуляции, символы перехода на новую строку.

Из символов алфавита формируются лексемы языка:

  • идентификаторы;
  • ключевые (зарезервированные) слова;
  • знаки операций;
  • константы;
  • разделители (скобки, точка, запятая, пробельные символы).

Границы лексем определяются другими лексемами, такими, как разделители или знаки операций.

Идентификаторы

Идентификатор — это имя программного объекта. В идентификаторе могут использоваться латинские буквы, цифры и знак подчеркивания. Прописные и строчные буквы различаются, например, sysop, SySoP и SYSOP — три различных имени. Первым символом идентификатора может быть буква или знак подчеркивания, но не цифра. Пробелы внутри имен не допускаются.

Совет

Для улучшения читаемости программы следует давать объектам осмысленные имена. Существует соглашение о правилах создания имен, называемое венгерской нотацией (поскольку предложил ее сотрудник компании Microsoft венгр по национальности), по которому каждое слово, составляющее идентификатор, начинается с прописной буквы, а вначале ставится префикс, соответствующий типу величины, например, iMaxLength, IpfnSetFirstDialog.

Другая традиция — разделять слова, составляющие имя, знаками подчеркивания: maxjength, number_of_galosh.

Длина идентификатора по стандарту не ограничена, но некоторые компиляторы и компоновщики налагают на нее ограничения. Идентификатор создается на этапе объявления переменной, функции, типа и т. п., после этого его можно использовать в последующих операторах программы. При выборе идентификатора необходимо иметь в виду следующее:

  • идентификатор не должен совпадать с ключевыми словами и именами используемых стандартных объектов языка;
  • не рекомендуется начинать идентификаторы с символа подчеркивания, поскольку они могут совпасть с именами системных функций или переменных, и, кроме того, это снижает мобильность программы;
  • на идентификаторы, используемые для определения внешних переменных, налагаются ограничения компоновщика (использование различных компоновщиков или версий компоновщика накладывает разные требования на имена внешних переменных).

Ключевые слова

Ключевые слова — это зарезервированные идентификаторы, которые имеют специальное значение для компилятора. Их можно использовать только в том смысле, в котором они определены. Список ключевых слов C++ приведен в таблице ниже.

















Список ключевых слов C++
asmelsenewthis
autoenumoperatorthrow
boolexplicitprivatetrue
breakexportprotectedtry
caseexternpublictypedef
catchfalseregistertypeid
charfloatreinterpret_casttypename
classforreturnunion
constfriendshortunsigned
const_castgotosignedusing
continueifsizeofvirtual
defaultinlinestaticvoid
deleteintstatic__castvolatile
dolongstructwchar_t
doublemutableswitchwhile
dynamic_castnamespacetemplate

Знаки операций

Знак операции — это один или более символов, определяющих действие над операндами. Внутри знака операции пробелы не допускаются. Операции делятся на унарные, бинарные и тернарную по количеству участвующих в них операндов. Знаки операций приведены в отдельной заметке – Операции языка C++

Один и тот же знак может интерпретироваться по-разному в зависимости от контекста. Все знаки операций за исключением [ ], ( ) и ? : представляют собой отдельные лексемы.

Большинство стандартных операций может быть переопределено (перегружено).

Константы

Константами называют неизменяемые величины. Различаются целые, вещественные, символьные и строковые константы. Компилятор, выделив константу в качестве лексемы, относит ее к одному из типов по ее внешнему виду (формат константы можно указать самостоятельно).

Форматы констант, соответствующие каждому типу, приведены в таблице ниже.






КонстантаФорматКонстанта
ЦелаяДесятичный: последовательностьдесятичных цифр, начинающаясяне с нуля, если это не число нуль 

Восьмеричный: нуль, за которым

следуют восьмеричные цифры

(0,1,2,3,4,5,6,7)

 

Шестнадцатеричный: 0х или 0Х,

за которым следуют шестнадцатеричные

цифры (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)

8, 0, 199226 

01, 020, 07155

 

 

 

0хА, 0x1B8, 0X00FF

ВещественнаяДесятичный:[цифры].[цифры]Экспоненциальный:

[цифры][.][цифры]{Е¦е}[+¦ -][цифры]

5.7,  .001,  35.0.2Е6,  .11е-З, 5Е10
СимвольнаяОдин или два символа, заключенных в апострофы‘А’, ‘ю’, ‘*’, ‘db’, ‘\0’, ‘\n’ , ‘\012’,  ‘\x07\x07’
СтроковаяПоследовательность символов, заключенная в кавычки«Здесь был Vasia»,»\t3начение r=\0xF5\n»

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

Если требуется сформировать отрицательную целую или вещественную константу, то перед константой ставится знак унарной операции изменения знака (-), например: -218, -022, -0х3C, -4.8, -0.1e4.

Вещественная константа в экспоненциальном формате представляется в виде мантиссы и порядка. Мантисса записывается слева от знака экспоненты (Е или е), порядок — справа от знака. Значение константы определяется как произведение мантиссы и возведенного в указанную в порядке степень числа 10. Обратите внимание, что пробелы внутри числа не допускаются, а для отделения целой части от дробной используется не запятая, а точка.

Символьные константы, состоящие из одного символа, занимают в памяти один байт и имеют стандартный тип char. Двухсимвольные константы занимают два байта и имеют тип int, при этом первый символ размещается в байте с меньшим адресом.

Все строковые литералы рассматриваются компилятором как различные объекты.

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

“Никто не доволен своей \

внешностью, но все довольны \

своим умом”

полностью эквивалентна строке

“Никто не доволен своей внешностью, но все довольны своим умом”

В конец каждого строкового литерала компилятором добавляется нулевой символ, представляемый управляющей последовательностью \0.

Поэтому длина строки всегда на единицу больше количества символов в ее записи. Таким образом, пустая строка ?? имеет длину 1 байт.

Обратите внимание на разницу между строкой из одного символа, например, «А», и символьной константой ?А?.

Пустая символьная константа недопустима.

Комментарии

Комментарий либо начинается с двух символов «прямая косая черта» (//) и заканчивается символом перехода на новую строку, либо заключается между символами-скобками /* и */. Внутри комментария можно использовать любые допустимые на данном компьютере символы, а не только символы из алфавита языка C++, поскольку компилятор комментарии игнорирует. Вложенные комментарии-скобки стандартом не допускаются, хотя в некоторых компиляторах разрешены.


По материалам книги «Программирование на языке высокого уровня C\C++», Павловская Т.А.

C++ и не только: Идентификаторы и ключевые слова

Идентификатор — это имя программного объекта. В идентификаторе могут использоваться латинские буквы, цифры и знак подчеркивания. Прописные и строчные буквы различаются, например, sysop, SySoP и SYSOP — три различных имени. Первым символом идентификатора может быть буква или знак подчеркивания, но не цифра. Пробелы внутри имен не допускаются.

Совет

Для улучшения читаемости программы следует давать объектам осмысленные имена. Существует соглашение о правилах создания имен, называемое венгерской нотацией (поскольку предложил ее сотрудник компании Microsoft венгр по национальности), по которому каждое слово, составляющее идентификатор, начинается с прописной буквы, а вначале ставится префикс, соответствующий типу величины, например, iMaxLength, IpfnSetFirstDialog.

Другая традиция — разделять слова, составляющие имя, знаками подчеркивания: maxjength, number_of_galosh.

Длина идентификатора по стандарту не ограничена, но некоторые компиляторы и компоновщики налагают на нее ограничения. Идентификатор создается на этапе объявления переменной, функции, типа и т. п., после этого его можно использовать в последующих операторах программы. При выборе идентификатора необходимо иметь в виду следующее:

  • идентификатор не должен совпадать с ключевыми словами и именами используемых стандартных объектов языка;
  • не рекомендуется начинать идентификаторы с символа подчеркивания, поскольку они могут совпасть с именами системных функций или переменных, и, кроме того, это снижает мобильность программы;
  • на идентификаторы, используемые для определения внешних переменных, налагаются ограничения компоновщика (использование различных компоновщиков или версий компоновщика накладывает разные требования на имена внешних переменных).
Ключевые слова

Ключевое слово — это зарезервированные идентификаторы, которые имеют специальное значение для компилятора. Их можно использовать только в том смысле, в котором они определены. Ключевые слова делятся на:

  • спецификаторы типов: char, double, enum, float, int, long, short struct, signed, union, unsigned, void, typedef
  • квалификаторы типов: const, volatile
  • квалификаторы классов памяти: auto, extern, register, static
  • операторы языка и идентификаторы специального назначения: break, continue, do, for, goto, if, return, switch, while; default, cas else,sizeof
  • модификаторы и псевдопеременные: конкретный набор зависит от компилятора

Идентификаторы | CSS | WebReference

Идентификатор определяет уникальное имя элемента, которое используется для изменения его стиля и обращения к нему через скрипты.

Синтаксис

#<Имя идентификатора> { Описание правил стиля }

При описании идентификатора вначале указывается символ решётки (#), затем идёт имя идентификатора. Оно должно начинаться с латинского символа и может содержать в себе символ дефиса (-) и подчеркивания (_). Использование русских букв в именах идентификатора недопустимо. В отличие от классов идентификаторы должны быть уникальны, иными словами, встречаться в коде документа только один раз.

Обращение к идентификатору происходит с помощью атрибута id, значением которого выступает имя идентификатора (id=»header»). Символ решётки при этом уже не указывается.

Обозначения

ОписаниеПример
<тип>Указывает тип значения.<размер>
A && BЗначения должны выводиться в указанном порядке.<размер> && <цвет>
A | BУказывает, что надо выбрать только одно значение из предложенных (A или B).normal | small-caps
A || BКаждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке.width || count
[ ]Группирует значения.[ crop || cross ]
*Повторять ноль или больше раз.[,<время>]*
+Повторять один или больше раз.<число>+
?Указанный тип, слово или группа не является обязательным.inset?
{A, B}Повторять не менее A, но не более B раз.<радиус>{1,4}
#Повторять один или больше раз через запятую.<время>#

Пример

<!DOCTYPE html>
<html>
<head>
<meta charset=»utf-8″>
<title>Идентификаторы</title>
<style>
#help {
position: absolute; /* Абсолютное позиционирование */
left: 160px; /* Положение элемента от левого края */
top: 50px; /* Положение от верхнего края */
width: 225px; /* Ширина блока */
padding: 5px; /* Поля вокруг текста */
background: #f0f0f0; /* Цвет фона */
}
</style>
</head>
<body>
<div>
Этот элемент помогает в случае, когда вы находитесь в осознании того
факта, что совершенно не понимаете, кто и как вам может помочь. Именно
в этот момент мы и подсказываем, что помочь вам никто не сможет.
</div>
</body>
</html>

Результат примера показан на рис. 1.

Рис. 1. Вид текста, оформленного с помощью идентификатора

Примечание

В браузере Internet Explorer до версии 7 идентификаторы иногда игнорируются, если они комбинируются с селекторами элементов или классами.

Спецификация

Каждая спецификация проходит несколько стадий одобрения.

  • Recommendation (Рекомендация) — спецификация одобрена W3C и рекомендована как стандарт.
  • Candidate Recommendation (Возможная рекомендация) — группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
  • Proposed Recommendation (Предлагаемая рекомендация) — на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
  • Working Draft (Рабочий проект) — более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
  • Editor’s draft (Редакторский черновик) — черновая версия стандарта после внесения правок редакторами проекта.
  • Draft (Черновик спецификации) — первая черновая версия стандарта.

Браузеры

В таблице браузеров применяются следующие обозначения.

  •  — свойство полностью поддерживается браузером со всеми допустимыми значениями;
  •  — свойство браузером не воспринимается и игнорируется;
  •  — при работе возможно появление различных ошибок, либо свойство поддерживается лишь частично, например, не все допустимые значения действуют или свойство применяется не ко всем элементам, которые указаны в спецификации.

Число указывает версию браузера, начиная с которой свойство поддерживается.

Автор и редакторы

Автор: Влад Мержевич

Последнее изменение: 02.03.2020

Редакторы: Влад Мержевич

C Ключевые слова и идентификаторы

Набор символов

Набор символов — это набор алфавитов, букв и некоторых специальных символов, которые допустимы в языке C.

алфавитов

Прописные буквы: A B C ................................... X Y Z
Строчные: a b c ...................................... x y z 

C принимает как строчные, так и прописные буквы в качестве переменных и функций.

цифр

0 1 2 3 4 5 6 7 8 9 

Специальные символы

Специальные символы в программировании на C
, <>.! */ |
\ ~ +

Пробелы Символы

Пустое пространство, новая строка, горизонтальная табуляция, возврат каретки и подача страницы.


C Ключевые слова

Ключевые слова — это заранее определенные зарезервированные слова, используемые в программировании, которые имеют особое значение для компилятора. Ключевые слова являются частью синтаксиса и не могут использоваться в качестве идентификатора.Например:

  int money;  

Здесь int — ключевое слово, которое указывает, что money — это переменная типа int (целое число).

Так как C чувствителен к регистру, все ключевые слова должны быть написаны в нижнем регистре. Вот список всех ключевых слов, разрешенных в ANSI C.

C Ключевые слова
авто двойной внутренний структура
перерыв еще длинный переключатель
корпус перечисление регистр typedef
знак внешний возврат штуцер
продолжить для подписанный пусто
до если статический а
по умолчанию перейти размер летучие
конст. поплавок короткий без знака

Все эти ключевые слова, их синтаксис и применение будут обсуждаться в соответствующих разделах.Однако, если вы хотите получить краткий обзор этих ключевых слов, не вдаваясь в подробности, посетите Список всех ключевых слов в программировании на C.


C Идентификаторы

Идентификатор относится к имени, присвоенному таким объектам, как переменные, функции, структуры и т. Д.

Идентификаторы должны быть уникальными. Они созданы, чтобы дать объекту уникальное имя, чтобы идентифицировать его во время выполнения программы. Например:

  int money;
двойной счетBalance;  

Здесь деньги и accountBalance — идентификаторы.

Также помните, что имена идентификаторов должны отличаться от ключевых слов. Вы не можете использовать int в качестве идентификатора, потому что int является ключевым словом.


Правила именования идентификаторов

  1. Действительный идентификатор может содержать буквы (как прописные, так и строчные), цифры и символы подчеркивания.
  2. Первая буква идентификатора должна быть буквой или знаком подчеркивания.
  3. Вы не можете использовать такие ключевые слова, как int , , и т. Д.как идентификаторы.
  4. Нет правила относительно длины идентификатора. Однако в некоторых компиляторах могут возникнуть проблемы, если длина идентификатора превышает 31 символ.

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

.

идентификаторов C ++ — qaruQaruSite

Переполнение стека

  1. Около
  2. Продукты

  3. Для команд
  1. Переполнение стека
    Общественные вопросы и ответы

  2. Переполнение стека для команд
    Где разработчики и технологи делятся частными знаниями с коллегами

  3. Вакансии
    Программирование и связанные с ним технические возможности карьерного роста

  4. Талант
    Нанимайте технических специалистов и создавайте свой бренд работодателя

  5. Реклама
    Обратитесь к разработчикам и технологам со всего мира

  6. О компании

Загрузка…

.

Ключевые слова и идентификаторы языка C

Ключевые слова — это сохраненные слова, которые имеют особое значение в языке C. Значение ключевых слов языка C уже было описано компилятору C. Это значение нельзя изменить. Таким образом, ключевые слова нельзя использовать в качестве имен переменных, потому что это может попытаться изменить существующее значение ключевого слова, что недопустимо (не волнуйтесь, если вы не знаете, что это за переменные, вы скоро поймете). 32 ключевых слова на языке C.

9000 по умолчанию

auto double int struct
break else long switch
case enum regig60007 return union
char float short unsigned
continue for signed volatile
9000

до если статический а

Что такое идентификаторы?

В языке C идентификаторы — это имена, присвоенные переменным, константам, функциям и пользовательским данным.Эти идентификаторы определены в соответствии с набором правил.


Правила для идентификатора
  1. Идентификатор может содержать только буквенно-цифровые символы (a-z, A-Z, 0-9) и подчеркивание ( _ ).
  2. Первый символ идентификатора может содержать только алфавит (a-z, A-Z) или подчеркивание ( _ ).
  3. Идентификаторы

  4. также чувствительны к регистру в C. Например, name и Name — это два разных идентификатора в C.
  5. Ключевые слова не могут использоваться в качестве идентификаторов.
  6. Никакие специальные символы, такие как точка с запятой, точка, пробелы, косая черта или запятая, не могут использоваться в идентификаторе или в качестве идентификатора.

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

  int myvariable = "Studytonight";  

Здесь myvariable — имя или идентификатор переменной, в которой хранится значение «Studytonight».


Набор символов

В языке C символы сгруппированы в следующие категории:

  1. Буквы (все алфавиты от a до z и от A до Z).
  2. цифр (все цифры от 0 до 9).
  3. Специальные символы (например, двоеточие : , точка с запятой ; , точка , , подчеркивание _ , амперсанд и и т. Д.).
  4. Белые пространства.

Вот небольшое видео

.Идентификатор

— cppreference.com

Идентификатор — это произвольно длинная последовательность цифр, символов подчеркивания, строчных и прописных латинских букв и символов Юникода, заданная с помощью escape-обозначений \ u и \ U (начиная с C99). Допустимый идентификатор должен начинаться с нецифрового символа (латинская буква, подчеркивание или нецифровой символ Юникода (начиная с C99)). Идентификаторы чувствительны к регистру (строчные и прописные буквы различны).

Это определяется реализацией, если в идентификаторах разрешены необработанные (не экранированные) символы Unicode:

 char * \ U0001f431 = "кот"; // поддерживается
char * 🐱 = "кошка"; // определяется реализацией
                  // (е.г. работает с Clang, но не с GCC до версии 10) 
(начиная с C99)

Идентификаторы могут обозначать следующие типы сущностей:

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

[править] Зарезервированные идентификаторы

Следующие идентификаторы зарезервированы и не могут быть объявлены в программе (это вызывает неопределенное поведение):

1) Идентификаторы, являющиеся ключевыми словами, не могут использоваться для других целей.В частности, #define или #undef идентификатора, идентичного ключевому слову, недопустимы.

2) Все внешние идентификаторы, начинающиеся с символа подчеркивания.

3) Все идентификаторы, начинающиеся с символа подчеркивания, за которым следует заглавная буква или другой символ подчеркивания (эти зарезервированные идентификаторы позволяют библиотеке использовать множество скрытых макросов и функций, не являющихся внешними)

4) Все внешние идентификаторы, определенные стандартной библиотекой (в размещенной среде). Это означает, что никакие пользовательские внешние имена не могут совпадать с именами библиотек, даже если объявлена ​​функция, идентичная библиотечной функции.

5) Идентификаторы, объявленные как зарезервированные для будущего использования стандартной библиотекой, а именно

  • cerf , cerfc , cexp2 , cexpm1 , clog10 , clog1p , clog2 , clgamma и их варианты с суффиксом clgamma и clgamma , в
  • , начинающиеся с , это или от до , за которым следует строчная буква в и
  • , начинающийся с str , за которым следует строчная буква в
  • , начинающиеся с str , mem или wcs , за которыми следует строчная буква в
  • , начиная с wcs , за которым следует строчная буква в
  • , начинающийся с atomic_ , за которым следует строчная буква в
  • , начинающиеся с cnd_ , mtx_ , thrd_ или tss_ , за которыми следует строчная буква в <нитях.h>
  • , начиная с int или uint и заканчивая _t , в
  • , начиная с atomic_ или memory_ , за которым следует строчная буква в
  • , начинающиеся с cnd_ , mtx_ , thrd_ или tss_ , за которыми следует строчная буква в
  • , начиная с E , за которым следует цифра или заглавная буква в
  • , начинающийся с FE_ , за которым следует заглавная буква в
  • , начиная с INT или UINT и заканчивая _MAX , _MIN или _C , в
  • , начиная с PRI или SCN , за которым следует строчная буква или буква X , в
  • , начинающийся с LC_ , за которым следует заглавная буква в
  • , начиная с SIG или SIG_ , за которым следует заглавная буква в
  • , начиная с TIME_ , за которым следует заглавная буква в
  • , начиная с ATOMIC_ , за которым следует заглавная буква в
  • , начиная с memory_order_ , за которым следует строчная буква в
  • , начинающиеся с cnd_ , mtx_ , thrd_ или tss_ , за которыми следует строчная буква в <нитях.ч>

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

Примечание: в C ++ идентификаторы с двойным подчеркиванием везде зарезервированы; в C зарезервированы только те, которые начинаются с двойного подчеркивания.

[править] Пределы перевода

Несмотря на то, что не существует конкретного ограничения на длину идентификаторов, ранние компиляторы имели ограничения на количество значимых начальных символов в идентификаторах, а компоновщики вводили более строгие ограничения на имена с внешней связью.C требует, чтобы любая соответствующая стандарту реализация поддерживала по крайней мере следующие ограничения:

  • 31 значащий начальный символ во внутреннем идентификаторе или имени макроса
  • 6 значащих начальных символов внешнего идентификатора
  • 511 внешних идентификаторов в одной единице перевода
  • 127 идентификаторов с объемом блока, объявленным в одном блоке
  • 1024 макроидентификатора, одновременно определенных в одной блоке трансляции предварительной обработки
(до C99)
  • 63 значащих начальных символа во внутреннем идентификаторе или имени макроса
  • 31 значащий начальный символ во внешнем идентификаторе
  • 4095 внешних идентификаторов в одной единице перевода
  • 511 идентификаторов с объявленной областью блока в одном блоке
  • 4095 макроидентификаторов, одновременно определенных в одной блоке трансляции предварительной обработки
(начиная с C99)

[править] Ссылки

  • C11 стандарт (ISO / IEC 9899: 2011):
  • 5.2.4.1 Пределы перевода (стр. 25-26)
  • 6.4.2 Идентификаторы (стр: 59-60)
  • 6.10.8 Предопределенные имена макросов (стр: 175-176)
  • 6.11.9 Предопределенные имена макросов (стр: 179)
  • 7.31 Будущие направления библиотеки (стр: 455-457)
  • K.3.1.2 Зарезервированные идентификаторы (p: 584)
  • C99 стандарт (ISO / IEC 9899: 1999):
  • 5.2.4.1 Пределы перевода (стр. 20-21)
  • 6.4.2 Идентификаторы (стр: 51-52)
  • 6.10.8 Предопределенные имена макросов (стр: 160-161)
  • 6.11.9 Предопределенные имена макросов (стр: 163)
  • 7.26 Будущие направления библиотек (стр: 401-402)
  • Стандарт C89 / C90 (ISO / IEC 9899: 1990):
  • 2.2.4.1 Пределы перевода
  • 3.8.8 Предопределенные имена макросов

[править] См. Также

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *