Вопрос . краткая история языка с
Язык C был разработан Дениссом Ритчи (Bell Labs,USA) в 1973 году. Этот язык был cпециально разработан для программирования известной операционной системы UNIX. Этот язык занимает особое место в системе языков программирования. Несмотря на то что этот язык является высоко-уровневым языком, он в отличии многих других имеет широкий арсенал низкоуровневых операций, что сделало его основным инструментом системного программирования.По принципам построения и синтаксису он относится к алголовской группе языков. В 1981 году Бьерн Страуструп (Bell Labs, USA) усовершенствовал язык С дополнив его средствами обьектно-ориентированного программирования ( программирование с классами) и дав ему новое название С ++. Этот язык был создан под влиянием языкa Simula -67. Язык С явлется подмножеством языка С++, трансляторы С++ корректно воспринимают программы написанные на языке С. Появление системы Windows привело к появлению двух технологий программирования : консольного и визуального. Современные системы программирования поддерживают обе эти технологии. К таким системам можно отнести MS Visual C++, Borland C++ Builder а также последние версии этих систем MS V Ms Visual c++ из пакета Ms Visual Studio 2010 .Эти системы поддерживают технологию NET, т.е. программирование в виртуaльной среде.
10 Вопрос *. Синтаксис языка с++
Программы на языке С /С++ представляют собой текст набранный в чистом редакторе и имеют расширение соответственно c или cpp . В общем случае программа может размещаться и в нескольких файлах и с помощью специальных директив препроцессора обьеденяться в один файл.
Программа на языке С/С++ состоит из специальных предложений - операторов. Каждый оператор имеет свой строгий синтаксис и назначение. Операторы можно разделить на две группы декларативные и императивные (исполнительные).
Каждый оператор должен оканчиваться символом ; . Операторы располaгаются свободно на строке и могут также свободно переносится на другие строки.
В программе на языке C/С++ могут использоваться специальные пояснительные тексты –комментарии . Существует 2 варианта комментариев
1. С использование символов //. Может использоваться как на отдельной строке так и в конце любого оператора.
// моя первая программа
D=b*b-4*a*c; // вычисление дискриминанта
2. /* комментарий */ . Может использоваться на нескольких строках
/* Моя вторая программа
Автор Агабалаев Д.
Группа 606 */
Для обозначения переменных и других обьектов используются имена (идентификаторы). Для имен можно использовать латинские буквы, арабские цифры, символ _, но имя обязательно должно начинаться с буквы. Максимальная длина 31 символ. В языке С/С++ имена чувствительны к регистру , т.е имена Jafar, jafar, JaFar воспринимаются как разные имена.
Имя Naila2011 правильное имя 20_Naila – неправильное
В языке C /С++ операторы должны записываться в нижнем регистре, т.е goto а не GOTO
Зарезирвированные ключевые слова такие как goto, int, break и другие не могут быть использованы в качестве имен, но например имя Breakдопустимо.
Перед исполнительнымиоператорами может располагаться так называемя метка (label) . Метка отделяется от оператора символов : и строится по правилам идентификаторов. www: s=2*x-67; Метки используется для ссылок на оператор.
11. вопрос * . Типы данных в С/С++
Типы данных используемые в С++ приведены на схеме.
Tипы |
Указатели |
Простые |
Сложные |
Перечисл. Enum |
Скалярные |
Void |
Char |
İnt |
Bool |
Файлы |
Float |
Mассивы |
Записи |
Структурыры |
Классы |
Каждая переменная в С/С++ имеет 4 характеристикиr.
1. ТИП (int, char, float, bool,void, enum)
2. ХАРАКТЕРИСТИКА ЗНАКА для типа (int) . Возможны 2 варианта signed и unsigned .
3. ХАРАКТЕРИСТИКА ДЛИНЫ для (int) возможны (short, long, long long ), для вещественных возможны ( float , double, и long double)
4. ХАРАКТЕРИСТИКА ПАМЯТИ возможны варианты (auto, registr,extern, static)
Из перечисленных 4 характеристик обязательным является указание типа !!!. Остальные принимают в этом случае значения по умолчанию
Ниже приводяться основные типы
Для обьявления типа используется синтаксис
Тип переменная1, переменная2….
int a,b,c;
При обьявлении переменные можно инициализировать, т.е. придавать начальные значения
int x=7,y=45;
float d=56.78;
char f=’G’;
double t=-5678.89;
12. вопрос **. Характеристика длины, диапазон и преобразования типов
Тип данных | Длина | Диапазон значений | |
İNT Целые | |||
char | -128÷127 | ||
unsigned char | 0 ÷ 255 | ||
signed char | -128 ÷ 127 | ||
Int | 2 или 4 | -32768 ÷ 32767 | |
unsigned int | 2 или 4 | 0 ÷ 65535 | |
signed int | 2 или 4 | -32768 ÷ 32767 | |
short int | -32768 ÷ 32767 | ||
unsigned short int | 0 ÷ 65535 | ||
signed short int | -32768 ÷ 32767 | ||
long int | -2147483648 ÷ 2147483647 | ||
long long int | -(263-1) ÷ (263) | Добавлен в C99 | |
signed long int | -2147483648 ÷ 2147483647 | ||
unsigned long int | 0 ÷ 4294967295 | ||
unsigned long long int | 0 ÷ 264-1 | Добавлен в C99 | |
Действительные float | |||
float | 3.4Е-38 ÷ 3.4E+37 | Точность 6 цифр | |
double | 1Е-308 ÷ 1E+307 | Точность 10 цифр | |
long double | 3.4Е-4932 ÷ 1.1E+4931 | Точность > 10) | |
Логические | |||
bool | true, false |
Если для целого int не указана характеристика знака то по умолчанию signed
Для вещественного типа по умолчанию принимается float .
Как видно для каждого типа свой диапазон значений.
Для типа int точно не определено 2 или 4 байта это зависит от типа процессора ( 16 или 32 разрядный) и системы программирования, в Borland C++ используется 2 . Это всегда можно проверить с помощью специальной функции sizeof (тип)
Например
printf (“%d8”, sizeof (int));
Для переменных используется формат sizeof x; здесь х имя переменной.
Несмотря на то что тип char предусмотрен для хранения символов, в С/С++ он может быть использован и для целых чисел !!!!!
Коды символов приведены в таблице
Например A-65 a-97 B-66 и т.д.
Различные типы данных можно преобразовывать в другие приемлемые типы
Для этого используется операция
(tip) выражение;
Например (float) 2*5 ; // int преобразуется во float
(int) ‘A’ ; // char преобразуется в int
(char) 65; // int преобразуется в char
Здесь имеются определенные ограничения : при преобразовании вещественного типа в целый будет потеряна дробная часть.
Имеется особый тип данных перечислительный enum, который задается списком своих значений.
enum dni (monday, tuesday, wednesday, thirsday, friday, saturdau, sunday);
enum colors (red, green, yellow);
dni x,y;
В действительности в памяти компьютера перечислительный тип представляется как long int со значениями 0, 1, 2 и ....
Эти данные можно сравнивать и присваивать.
Тип Void tipi в основном используется в функциях для указания на отсутствие передаваемого результата.
Тип bool поддерживается не во всех версиях !!!!!!
13. вопрос * Характеристика памяти