Основы и методология программирования 2016/2017/167-1 — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(25.11)
(25.11)
Строка 63: Строка 63:
  
 
$ valgrind ./a.out
 
$ valgrind ./a.out
 +
 +
=== 30.11 ===
 +
 +
Стандартный срок исправлений ревью - 4 дня, пожалуйста следите за своими задачами (а лучше сделать себе уведомление на почту).

Версия 14:56, 27 ноября 2016

Общая информация

Время для консультаций (по предварительной договоренности):

  • Среда 11:00 - 12:00, 13:30 - 14:30
  • Пятница 11:00 - 12:00, 13:40 - 15:00

аудитория 623

Почта: alexeyum@gmail.com

Семинары

Код программ мы пишем в соответствии со стилем

02.11

05.11 - 11.11

Вот несколько часто используемых ситуаций при работе с программами

  • Компиляция с сохранением результата в заданный файл

$ clang++ mycode.cpp -o myoutput

  • Компиляция для стандарта C++11

$ clang++ mycode.cpp -std=c++11

  • Компиляция с оптимизацией

$ clang++ mycode.cpp -O3

  • Компиляция с сохранением информации для отладчика

$ clang++ mycode.cpp -g

  • Запускаем отладчик, потом в нем ставим брейкпоинт и запускаем программу

$ gdb ./a.out

> break 42

> run

  • Перенаправляем вывод (stdout/cout) в output.txt, лог ошибок (stderr/cerr) в errorlog.txt и читаем ввод (stdin/cin) из input.txt

$ ./a.out < input.txt > output.txt 2> errorlog.txt

  • Перенаправляем один из потоков "в корзину"

$ ./a.out > /dev/null

23.11

Страница с интерфейсами итераторов: http://www.cplusplus.com/reference/iterator/

25.11

До следующего семинара нужно отправить задачи I, P в Anytask (см. инструкцию на главной), иначе оценка за эти задачи будет 0. По результатам ревью оценка может быть снижена в зависимости от качества кода и скорости исправлений (штраф может быть до 25 баллов). В дальнейшем дедлайн отправки будет совпадать с дедлайном для контеста.

Запуск программы с санитайзером valgrind:

$ g++ main.cpp -g

$ valgrind ./a.out

30.11

Стандартный срок исправлений ревью - 4 дня, пожалуйста следите за своими задачами (а лучше сделать себе уведомление на почту).