courses:programming:topic3
Практические задачи ввода вывода
- Указатели. Передача аргументов функции с использованием указателей.
- Ввод форматированных данных через scanf, используя несколько параметров разного типа в сроке. Например «%s %d %x». Обратить внимание на вводы строк: адрес первого элемента массива, адрес строки.
- Пример на обработку возвращаемых значений printf/scanf
- Демонстрация ввода массива (из файла с помощью перенаправления). Вычисление значения по всем элементам, например суммы
- Строки как массивы символов с нулевым символом на конце
- Ввод строк. Использование fgets вместо потенциально опасных для строк gets и scanf
- Построение диалоговой системы (Цикл: приглашение системы и вопрос → ввод пользователем ответов → интерпретация ответа)
- Демонстрация последствий использования gets (модификация других переменных вследствие переполнения буфера)
Примеры на печать и чтение из/в строки (функции sscanf, sprintf)Интерпретация кодов символов. Например программа считывает из стандартного потока бинарный набор байт и печатает его побайтно в виде 16-ричных кодов. Затем в виде целых беззнаковых short. Бинарным потоком может являться сам исподняемый файл, т.е. ./a.out <./a.out Также для справки см. hexdump -C