getc()、getchar()、getch() 和 getche() 的区别


所有这些函数都从输入中读取字符并返回一个整数。EOF 值用于此目的。

getc()

它从输入中读取单个字符并返回一个整数值。如果失败,则返回 EOF。

以下是 C 语言中 getc() 的语法:

int getc(FILE *stream);

以下是 C 语言中 getc() 的示例:

示例

 在线演示

#include<stdio.h>
int main () {
   char val;
   printf("Enter the character: 
");    val = getc(stdin);    printf("Character entered: ");    putc(val, stdout);    return(0); }

输出

Enter the character: a
Character entered: a

getchar()

函数 getchar() 从标准输入读取字符,而 getc() 从输入流读取字符。因此,getchar() 等效于 getc(stdin)。

以下是 C 语言中 getchar() 的语法:

int getchar(void);

以下是 C 语言中 getchar() 的示例:

示例

 在线演示

#include <stdio.h>
int main() {
   char val;
   val = getchar();
   printf("Enter the character : 
");    printf("Entered character : %c", val);    return 0; }

输出

Enter the character : n
Entered character : n

getch()

函数 getch() 是一个非标准函数。它在“conio.h”头文件中声明。它主要由 Turbo C 使用。它不是 C 标准库的一部分。它立即返回输入的字符,甚至不需要等待回车键。

以下是 C 语言中 getch() 的语法:

int getch();

以下是 C 语言中 getch() 的示例:

示例

#include <stdio.h>
#include<conio.h>
int main() {
   char val;
   val = getch();
   printf("Enter the character : ");
   printf("Entered character : %c", val);
   return 0;
}

输出

Enter the character : m
Entered character : m

getche()

与 getch() 一样,getche() 函数也是一个非标准函数,并在“conio.h”头文件中声明。它从键盘读取单个字符并立即返回它,甚至不需要等待回车键。

以下是 C 语言中 getche() 的语法:

int getche(void);

以下是 C 语言中 getche() 的示例:

示例

#include <stdio.h>
#include<conio.h>
int main() {
   char val;
   val = getche();
   printf("Enter the character : ");
   printf("Entered character : %c", val);
   return 0;
}

输出

Enter the character : s Entered character : s

更新于: 2020-06-24

5K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告