русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Вопросы для контроля

1. Какие этапы составляют предмашинную подготовку задачи?

2. Что такое алгоритм решения?

3. В каком виде выполняются алгоритмы?

4. Как выполняется схема алгоритма?

5. Что такое программа решения?

2.ЯЗЫК ПРОГРАММИРОВАНИЯ С++

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

__asm __es __interrupt short
_asm _es _interrupt signed
asm __export interrupt sizeof
auto _export __loadds __ss
break extern _loadds _ss
case __far long static
catch _far __near __stdcall
__cdecl far _near _stdcall
_cdecl __fastcall near struct
cdecl _fastcall new switch
char __finally operator template
class float __pascal this
const for _pascal __thread
continue friend pascal throw
__cs goto private __try
_cs __huge protected try
default _huge public typedef
delete huge register union
do if return unsigned
double __import __rtti virtual
__ds _import __saveregs void
_ds import _saveregs volatile
else inline __seg while
enum int _seg  

2.2. Расширения C++ по сравнению с Си стандарта ANSI

__asm __except __import (2) pascal
_asm __export _import (2) __saveregs (1)
__cdecl __far (1) _interrupt (1) _saveregs (1)
_cdecl _far (1) interrupt (1) __seg (1)
cdecl far (1) __loadds (1) _seg (1)
__cs (1) __fastcall _loadds (1) ___ss (1)
_cs (1) _fastcall __near (1) __ss (1)
__ds (1) __finally _near (1) __rtti
_ds (1) __huge (1) near (1) __thread (2)
__es (1) _huge (1) __pascal __try
_es (1) huge (1) _pascal  


(1) - доступны только для 16-разрядных компиляторов
(2) - доступны только для 32-разрядных компиляторов

2.3 Ключевые слова, специфические для C++

asm friend protected try
catch inline public virtual
class new template __rtti
delete operator this  
private throw    

2.4 Регистровые псевдопеременные Borland C++

_AH _CL _EAX (*) _ESP
_AL _CS _EBP (*) _FLAGS
_AX _CX _EBX (*) _FS
_BH _DH _ECX (*) _GS (*)
_BL _DI _EDI (*) _SI
_BP _DL _EDX (*) _SP
_BX _DS _ES _SS
_CH _DX _ESI (*)  

(*) - для 32-разрядного компилятора эти псевдопеременные всегда доступны. 16-разрядный компилятор может их использовать только при указании параметра генерации инструкций 80386.

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

Характерным для C++ и для других реализаций языка является учет регистра букв в идентификаторах. Последние могут содержать буквы от A до Z и от a до z, символ подчеркивания (_) и цифры от 0 до 9 и должны начинаться с буквы. Константы

Константами называются лексемы, представляющие собой фиксированные числовые или символьные значения. Borland C++ поддерживает четыре класса констант: константы с плавающей точкой, целочисленные константы, константы перечислимого типа и символьные константы (включая строковые).

Целочисленные константы представлены десятичным, восьмиричным и шестнадцатиричным форматом.

Символьные константы записываются одним или более символами, заключенными в одинарные кавычки, например 'F', '=', '\n'.

2.6 Описание операций

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

2.6.1 Унарные операции

Операция Смысл
& Операция адресации
* Операция обращения по ссылке
+ Унарный плюс
- Унарный минус
~ Поразрядное дополнение (дополнение до единицы)
! Логическое отрицание
++ Префикс: прединкрементация; Постфикс: постинкрементация
-- Префикс: преддекрементация; Постфикс: постдекрементация

2.6.2 Бинарные операции

Операция Смысл
Операции типа сложения + Бинарный плюс (сложение)
- Бинарный минус (вычитание)
Операции типа умножения * Умножение
/ Деление
% Остаток от деления
Операции сдвига << Сдвиг влево
>> Сдвиг вправо
Поразрядные операции & Поразрядное И
^ Поразрядное исключающее ИЛИ
| Поразрядное включающее ИЛИ
Логические операции && Логическое И
|| Логическое ИЛИ
Операции присваивания = Присваивание
*= Присвоить произведение
/= Присвоить частное
%= Присвоить остаток
+= Присвоить сумму
-= Присвоить разность
<<= Присвоить сдвиг влево
>>= Присвоить сдвиг вправо
&= Присвоить поразрядное И
^= Присвоить поразрядное исключающее ИЛИ
|= Присвоить поразрядное ИЛИ
Операции отношения < Меньше
> Больше
<= Меньше или равно
>= Больше или равно
Операции равенства == Равно
!= Не равно
Операции выбора элемента . Непосредственный выбор элемента
-> Косвенный выбор элемента
Операции с элементами класса :: Доступ/определение области действия
.* Обращение через указатель к элементу класса
->* Обращение через указатель к элементу класса
Условные операции a ? x : y "Если a, то x, иначе - y"
Операция запятой , Вычислить, например, a, b, c слева - направо

2.6.3 Пунктуаторы

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

пунктуатор: одно из [ ] ( ) { } , ; : ... * = #

2.6.4 Ассоциативность и приоритеты операций Borland C++

Операции Ассоциативность
() [] -> :: . ! ~ - ++ -- & * (приведение типа) Слева-направо
sizeof new delete Справа-налево
.* ->* Слева-направо
* / % Слева-направо
+ - Слева-направо
<< >> Слева-направо
< <= > >= Слева-направо
== != Слева-направо
& Слева-направо
^ Слева-направо
| Слева-направо
&& Слева-направо
|| Слева-направо
?:(условное выражение) Справа-налево
= *= /= := += -= &= ^= |= <<= >>= Справа-налево
, Слева-направо

2.6.5 Размер памяти и диапазон значений стандартных типов данных СИ/СИ++

№ п/п   Тип переменной Объём памяти Диапазоны представления чисел Спецификатор
бит байт min max
char -128 %d %c %s
unsigned char %c %s
short -32768 %d %o %x
int[1] -32768 %d %o %x
unsigned int %u
long -2147483648 %ld %lo %lx
unsigned long %lx %lu
float 3,4 Е-38 3,4 Е+38 %f %e %g
double 1,7 Е-308 1,7 Е+308 %le %lf
long double 3,4 Е-4932 3,4 Е+4932 %lf %le %lg
указатель %lu
           
           

Просмотров: 460


Вернуться в оглавление



Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.