Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / C / C++ / Справочное руководство по С++ /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Краткое изложение синтаксиса - Программирование от RIN.RU
Краткое изложение синтаксиса

Мы надеемся, что эта краткая сводка синтаксиса C++ поможет пониманию. Она не является точным изложением языка.


Выражения


выражение:
терм
выражение бинарная_операция выражение
выражение ? выражение : выражение
список_выражений
терм:
первичный
* терм
& терм
- терм
! терм
~ терм
++терм
--терм
терм++
терм--
( имя_типа) выражение
имя_простого_типа ( список_выражений)
sizeof выражение
sizeof ( имя_типа )
new имя_типа
new ( имя_типа )
первичный:
id
:: идентификатор
константа
строка
this
( выражение )
первичный[ выражение ]
первичный ( список_выражений opt )
первичный.id
первичный->id
id:
идентификатор
typedef-имя :: идентификатор
список_выражений:
выражение
список_выражений, выражение
операция:
унарная_операция
бинарная_операция
специальная_операция


Бинарные операции имеют приоритет, убывающий в указанном порядке:


бинарная_операция:
* / %
+ -
<< >>
< >
== !=
&
^
|
&&
||
= += -= *= /= %= ^= &= |= >>= <<=
унарная_операция:
* & - ~ ! ++ --
специальная_операция:
() []
имя_типа:
спецификаторы_описания абстрактный_описатель
абстрактный_описатель:
пустой
* абстрактный_описатель
абстрактный_описатель ( список_описаний_параметров )
абстрактный_описатель [ константное_выражение opt ]
( абстрактный_описатель )
простое_имя_типа:
typedef-имя
char
short
int
long
unsigned
float
double
typedef-имя:
идентификатор


Описания


описание:
спецификаторы_описания opt список_описателей opt ;
описание_имени
asm-описание
описание_имени:
агрег идентификатор ;
enum идентификатор ;
агрег:
class
struct
union
asm-описание:
asm ( строка );
спецификаторы_описания:
спецификатор_описания спецификатор_описания opt
спецификатор_описания:
имя_простого_типа
спецификатор_класса
enum_спецификатор
sc_спецификатор
фнк_спецификатор
typedef
friend
const
void
sc_спецификатор:
auto
extern
register
static
фнк-спецификатор:
inline
overload
virtual
список_описателей:
иниц-описатель
иниц-описатель , список_описателей
иниц-описатель:
описатель инициализатор opt
описатель:
оп_имя
( описатель )
* const opt описатель
& const opt описатель
описатель ( список_описаний_параметров )
описатель [ константное_выражение opt ]
оп_имя:
простое_оп_имя
typedef-имя . простое_оп_имя
простое_оп_имя:
идентификатор
typedef-имя
- typedef-имя
имя_функции_операции
имя_функции_операции:
операция операция
список_описаний_параметров:
список_описаний_прм opt ... opt
список_описаний_прм :
список_описаний_прм , описание_параметра
описание_параметра
описание_параметра:
спецификаторы_описания описатель
спецификаторы_описания описатель = константное_выражение
спецификатор_класса:
заголовок_класса {список_членов opt }
заголовок_класса {список_членов opt public :
список_членов opt }
заголовок_класса :
агрег идентификатор opt
агрег идентификатор opt : public opt typedef-имя
список_членов :
описание_члена список_членов opt
описание_члена:
спецификаторы_описания opt описатель_члена ;
описатель_члена:
описатель
идентификатор opt : константное_выражение
инициализатор:
= выражение
= { список_инициализаторов}
= { список_инициализаторов, }
(список_выражений )
список_инициализаторов :
выражение
список_инициализаторов , список_инициализаторов
{ список_инициализаторов }
enum-спецификатор:
enum идентификатор opt { enum-список }
enum-список:
перечислитель
enum-список , перечислитель
перечислитель:
идентификатор
идентификатор = константное_выражение




Операторы


составной_оператор:
{ список_описаний opt список_операторов opt }
список_описаний:
описание
описание список_описаний
список_операторов:
оператор
оператор список_операторов
оператор:
выражение ;
if ( выражение ) оператор
if ( выражение ) оператор else оператор
while ( выражение ) оператор
do оператор while ( выражение ) ;
for ( выражение opt ; выражение opt ; выражение opt )
оператор
switch ( выражение ) оператор
case константное выражение : оператор
default : оператор
break;
continue;
return выражение opt ;
goto идентификатор ;
идентификатор : оператор
delete выражение ;
asm ( строка ) ;
;




Внешние определения



программа:
внешнее_определение
внешнее_определение программа
внешнее_определение:
определение_функции
описание
определение_функции:
спецификаторы_описания opt описатель_функции
инициализатор_базового_класса opt тело_функции
описатель_функции:
описатель ( список_описаний_параметров)
тело_функции:
составной_оператор
инициализатор_базового_класса:
: ( список_параметров opt )




Препроцессор



#define идент строка_символов
#define идент( идент,...,идент ) строка символов
#else
#endif
#if выражение
#ifdef идент
#ifndef идент
#include "имя_файла"
#include <имя_файла>
#line константа "имя_файла"
#undef идент




 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Договоренности о лексике

Запись синтаксиса

Имена и типы

Объекты и LVALUE(адреса)

Преобразования

Выражения

Описания

Операторы

Внешние определения

Командные строки компилятора

Обзор типов

Константные выражения

Соображения мобильности

Свободная память

Отличия от "старого C"

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь