Ключова разлика – getc срещу getchar
Функцията е набор от оператори за изпълнение на конкретна задача. При програмирането потребителят може да дефинира своите функции или да използва функциите, предоставени от езика за програмиране. Езикът C има редица функции, така че програмистът може да ги използва директно в кодирането, без да ги прилага от самото начало. Има няколко функции, които се свързват с четене на знаци. Две от тях са getc и getchar. Ключовата разлика между getc и getchar е, че getc се използва за четене на знак от входен поток като файл или стандартен вход, докато getchar е за четене на знак от стандартен вход. Тази статия обсъжда разликата между тези две функции.
Какво е getc?
Това е функция, използвана за четене на знак от входен поток като файл или клавиатура. Връща съответната целочислена стойност при успех. Синтаксисът на getc е int getc(File stream). Вижте примера по-долу. Да приемем, че test.txt е обикновен текстов файл в директорията на проекта. Този файл има два знака, които са „a“и „b“.
Фигура 01: Четене на знаци на файл с помощта на getc
Съгласно горната програма, тестовият файл се отваря в режим на четене. След това първият знак се чете с помощта на функцията getc и се съхранява в променлива c1. Изходът на оператора printf c1. След това вторият символ се чете и съхранява в променлива c2. Изходът на оператора printf c2. Следователно функцията getc се използва за четене на символ от поток, като например файл.
Фигура 02: Четене на знаци във файл с помощта на getc и loop.
Може да се използва с цикъл за четене на всички символи, един по един, докато достигне края на файла (EOF), както по-горе. Двата знака във файла test.txt се показват на екрана.
Какво е getchar()?
getchar() се използва за четене на знак само от стандартния вход. Той изчаква, докато се натисне клавишът за въвеждане и показанията могат да се видят на екрана. Синтаксисът му е подобен на int getchar(void);
Функцията getchar не изисква аргумент като getc. По подразбиране getchar работи за стандартен вход. Следователно не е необходимо да се предава аргумент на функцията getchar. Вижте примера по-долу.
Фигура 03: getchar
Когато потребителят даде знак за въвеждане, той се показва на екрана и изчаква натискането на клавиша за въвеждане. След клавиша enter изходът се отпечатва на екрана поради функцията printf.
Същата функция getchar може да бъде постигната с помощта на функцията getc както следва.
Фигура 04: Функционалност на getchar с помощта на getc
Съгласно горната програма, функцията getc се използва за четене на знак. Съхранява се в променлива „ch“. Функцията getc аргументира stdin, за да покаже, че входът е взет от стандартния вход, който е клавиатурата. Потребителят може да даде знак и да натисне клавиша за въвеждане. След това този символ се отпечатва на екрана с помощта на функцията printf.
Какви са приликите между getc и getchar?
- И двете са функции, предоставени от езика за програмиране C.
- И двете функции връщат край на файла (EOF), когато потокът приключи.
Каква е разликата между getc и getchar?
getc срещу getchar |
|
getc е C функция за четене на знак от входен поток като файлов поток или стандартен вход. | getchar е C функция за четене на знак само от стандартния входен поток (stdin), който е клавиатурата. |
Синтаксис | |
Синтаксисът getc е подобен на int getc(File stream). | синтаксисът на getchar е подобен на int getchar(void); |
Резюме – getc срещу getchar
Програмният език C предоставя много функции. Програмистите могат да използват тези функции, без да ги прилагат от самото начало. Две от тези функции са getc и getchar. Разликата между getc и getchar е, че getc се използва за четене на знак от входен поток като файл или стандартен вход, а getchar е за четене на знак от стандартен вход. И двете се използват за четене на знак, но функционалностите им са различни.
Изтеглете PDF версията на getc срещу getchar
Можете да изтеглите PDF версия на тази статия и да я използвате за офлайн цели според бележката за цитиране. Моля, изтеглете PDF версия тук Разлика между getc и getchar