Получение символа с помощью функции getchar в языке программирования C
Функция getchar() в языке программирования C используется для считывания одного символа с стандартного ввода. Она является частью библиотеки stdio.h и широко применяется для реализации программ, в которых требуется ввод символов от пользователя. Давайте рассмотрим более подробно, как использовать функцию getchar() и приведем примеры кода.
Функция getchar() считывает один символ с потока ввода и возвращает его в виде числового кода ASCII. При этом, она игнорирует все пробельные символы, такие как пробелы, символы новой строки и табуляции.
Рассмотрим следующий пример кода, демонстрирующий использование функции getchar() для считывания символов до тех пор, пока не будет введен символ новой строки (\n), и выводить их коды ASCII:
#include <stdio.h>
int main() {
int ch;
printf("Введите символы, нажмите Enter, чтобы завершить ввод:\n");
while((ch = getchar()) != '\n') {
printf("Код ASCII: %d\n", ch);
}
return 0;
}
В данном примере мы объявляем переменную ch типа int для сохранения вводимого символа. Затем мы выводим приглашение для пользователя и начинаем цикл while, который будет выполняться до тех пор, пока вводимые символы не станут символом новой строки (\n).
Внутри цикла while мы присваиваем функции getchar() возвращаемое значение переменной ch и проверяем, не равно ли оно символу новой строки. Если символ не является символом новой строки, мы выводим его код ASCII с помощью функции printf(). После завершения цикла ввода, программа возвращает значение 0.
Пример использования функции getchar() может выглядеть следующим образом:
Введите символы, нажмите Enter, чтобы завершить ввод:
Hello, World!
Код ASCII: 72
Код ASCII: 101
Код ASCII: 108
Код ASCII: 108
Код ASCII: 111
Код ASCII: 44
Код ASCII: 32
Код ASCII: 87
Код ASCII: 111
Код ASCII: 114
Код ASCII: 108
Код ASCII: 100
Код ASCII: 33
В этом примере мы ввели строку "Hello, World!" и программа вывела код ASCII каждого символа этой строки, проигнорировав символ новой строки.
Таким образом, функция getchar() позволяет считывать символы с потока ввода и использовать их в программе для различных целей. Обратите внимание, что символы могут быть представлены не только числовыми кодами ASCII, но и другими системами кодирования символов, такими как Unicode. Конкретный результат будет зависеть от системы, на которой запущена программа.