Содержание
- 2. Содержание лекции История C++. Интегрированные среды разработки. Структура программы на C++ Переменные Типы данных Ввод/вывод данных
- 3. История C++ Разработан Бьярном Страуструпом в 1979 году из Bell Laboratories в рамках докторской диссертации. Мотивацией
- 4. Особенности C++ Компилируемый язык Хорошо развитые низкоуровневые механизмы: высокая эффективность (почти ассемблер) и низкий уровень контроля
- 5. Особенности C++ Поддерживает также объектно-ориентированный стиль Почти полностью совместим с C Более удобен при написании программ
- 6. Компиляция
- 7. Integrated Development Environment Visual Studio Visual Studio Code Vim Qt Creator Eclipse Code::Blocks XCode
- 8. Пример IDE: Code::Blocks
- 9. Структура программы Программа состоит из одного или нескольких файлов, образующих проект: Файлы содержат описания данных и
- 10. Самая простая программа // Главная функция всегда называется main // int - тип результата // main
- 11. Пример: та самая программа // директива включения файла // iostream – функции ввода/вывода #include int main()
- 12. Пример: немного сложнее #include using namespace std; int main(int argc, char* argv[]) { cout return 0;
- 13. Пример Скомпилировать и запустить: g++ hello.cpp -o hello ./hello Альтернативный вариант (нужен MinGW) x86_64-w64-mingw32-g++ hello.cpp -o
- 14. Комментарии /* это - комментарий ANSI C */ /* комментарий Си может располагаться на нескольких строчках
- 15. Константы и литералы Константы относятся к фиксированным значениям, которые программа может не изменять, и они называются
- 16. Константы и литералы Для объявления констант можно использовать препроцессор #DEFINE: #include #define LENGTH 10 #define WIDTH
- 17. Константы и литералы Для объявления констант определенного типа можно использовать префикс const: #include int main() {
- 18. Переменные Переменная - это идентификатор, который относится к данным, хранящимся в определенной области памяти. К этим
- 19. Переменные Переменная имеет тип, имя и значение. Тип определяет, какую информацию может хранить переменная. Перед использованием
- 20. Переменные В языке C++ есть две похожие концепции: присваивание и инициализация. int a; // это объявление
- 21. Задачи, решаемые описанием переменных Определить необходимое количество памяти для хранения этих данных Определить способ представления значения
- 22. Имена переменных Имя в языках C и C++ всегда начинается с латинской буквы За ней может
- 23. Примеры имен Корректные имена alpha24 red_eye canGo b Некорректные имена НОД (содержит русские буквы) 3head (начинается
- 24. Зарезервированные слова
- 25. Типы данных Тип определяет класс значений, которые могут принимать переменная или выражение. Каждый литерал принадлежит одному
- 26. Фундаментальные типы Логический тип: bool (true или false) Символьные типы: char – один символ в кодировке
- 27. Пример #include using namespace std; int main() { char a ='d’; char b = 65; //
- 28. Фундаментальные типы Целочисленные типы: short – представляет целое число в диапазоне от –32768 до 32767 (2
- 29. Фундаментальные типы int – представляет целое число в диапазоне от –32768 до 32767 (−2 147 483
- 30. Фундаментальные типы long – представляет целое число в диапазоне от −2 147 483 648 до 2
- 31. Фундаментальные типы long long: представляет целое число в диапазоне от −9 223 372 036 854 775
- 32. Пример int main() { short a = -10; unsigned short b= 10; int c = -30;
- 33. Фундаментальные типы float – представляет вещественное число ординарной точности с плавающей точкой в диапазоне +/- 3.4E-38
- 34. Пример #include using namespace std; int main() { float a = -10.45; double b = 0.00105;
- 35. Пример #include using namespace std; int main() { cout cout World\n\n"; return 0; }
- 36. Еще один пример // Подключение файла с описанием // функций ввода-вывода C++ #include // Подключение пространства
- 37. Поддержка русского языка #include #include // Для вызова setlocale() using namespace std; int main() { setlocale(LC_ALL,
- 38. Классификация операций По числу операндов Одноместные (унарные) Двуместные (бинарные) Трехместная (тернарная) count++ !found a+b rdy &&
- 39. Классификация операций По категории операндов Ссылочные (array[ix], student.name) Арифметические (a+b, a-b, -c, --a) Логические (булевские) (rdy
- 40. Классификация операций По действию над двоичным представлением Операции, действующие над значением в целом (a+b) Операции, действующие
- 41. Приоритет операций
- 42. Важно! Оператор присваивания = не имеет никакого отношения к процессу определения равенства и никогда не используется
- 43. Приоритеты // Первыми выполняются операции в () // Затем выполняются *, /, % - слева направо
- 44. Приоритет операций
- 45. Приоритет операций
- 46. Базовый ввод/вывод Для ввода/вывода используется стандартная библиотека iostream. Она определяет несколько потоков для ввода и вывода:
- 47. Базовый ввод/вывод Два оператора побитового сдвига: >> – получить из входного потока (извлечение);
- 49. Скачать презентацию