Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1_Линейные программы (МУ к занятию).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
985.6 Кб
Скачать

1.2.2 Алфавит языка

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

  • прописные и строчные латинские буквы и знак подчеркивания;

  • арабские цифры от 0 до 9;

  • специальные знаки:

“ { } , | [ ] ( ) + - / % * . \ ‘ : ? < = > ! & # ~ ; ^

  • пробельные символы: пробел, символы табуляции, символы перехода на новую строку.

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

  • идентификаторы;

  • ключевые (зарезервированные) слова;

  • знаки операций;

  • константы;

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

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

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

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

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

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

  • идентификатор не должен совпадать с ключевыми словами и именами используемых стандартных объектов языка;

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

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

1.2.4 Ключевые (служебные) слова

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

Дополнительные к этому списку ключевые слова приведены в описаниях конкретных реализаций С++. Некоторые из них начинаются с символа подчеркивания, например: _export, _ds, _AH и др. Суще6ствуют ключевые слова, начинающиеся с двойного подчеркивания. В связи с этим программисту не рекомендуется использовать в своей программе идентификаторы, начинающиеся с одного или двух подчеркиваний, во избежание совпадения с ключевыми словами.

Таблица 1-Список ключевых (служебных) слов

asm

auto

bool

break

case

catch

char

class

const

const_cast

continue

default

delete

do

double

dynamic_cast

else

enum

explicit

export

extern

falst

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

whilt