zoukankan      html  css  js  c++  java
  • c/c++,输入一个字符 2014-11-20 07:00 30人阅读 评论(0) 收藏

    getch()、getche()和getchar()函数
        (1) getch()和getche()函数
        这两个函数都是从键盘上读入一个字符。其调用格式为:
         getch();
         getche();
        两者的区别是: getch()函数不将读入的字符回显在显示屏幕上, 而getche()
    函数却将读入的字符回显到显示屏幕上。
        例1:
         #include<stdio.h>
         #include<conio.h>
         main()
         {
          char c, ch;
          c=getch();     /*从键盘上读入一个字符不回显送给字符变量c*/
          putchar(c);    /*输出该字符*/
          ch=getche();   /*从键盘上带回显的读入一个字符送给字符变量ch*/
          putchar(ch);
         }
        利用回显和不回显的特点, 这两个函数经常用于交互输入的过程中完成暂停
    等功能。
        例2:
         #include<stdio.h>
         #include<conio.h>
         main()
         {
          char c, s[20];
          printf("Name:");
          gets(s);
          printf("Press any key to continue...");
          getch(); /*等待输入任一键*/
         }
        (2) getchar()函数
        getchar()函数也是从键盘上读入一个字符, 并带回显。它与前面两个函数
    的区别在于: getchar()函数等待输入直到按回车才结束, 回车前的所有输入字
    符都会逐个显示在屏幕上。但只有第一个字符作为函数的返回值。
        getchar()函数的调用格式为:
         getchar();
        例3:
         #include<stdio.h>
         #include<conio.h>
         main()
         {
              char c;
              c=getchar();   /*从键盘读入字符直到回车结束*/
              putchar(c);    /*显示输入的第一个字符*/
              getch();       /*等待按任一健*/
         }
    例4
         #include<stdio.h>
         #include<conio.h>
         main()
         {
              char c;
              while ((c=getchar())!=' ')   /*每个getchar()依次读入一个字符*/
              printf("%c",c);    /*按照原样输出*/
              getch();       /*等待按任一健*/
         }

    转自:http://hi.baidu.com/the_way_welike/blog/item/9a0aa28c5d31d918b31bba39.html

    -----------------------------------------------------------------------------------------------------------------------------------

    getch()等应有头文件#include<conio.h>,下面是解释:

    第一点:
    你既然用了getch()函数,在前面就应有头文件#include<conio.h>。因为:
    conio是Console Input/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作,比如getch()函数等等。
    包含的函数
    cgets(char *);
    cprintf(const char *, ...);
    cputs(const char *);
    cscanf(const char *, ...);
    inp(unsigned short);
    inpw(unsigned short);
    getch(void);
    getche(void);
    kbhit(void);
    outp(unsigned short, int);
    outpw(unsigned short, unsigned short);
    putch(int);
    ungetch(int);
    void _Cdecl clreol (void);
    void _Cdecl clrscr (void);
    void _Cdecl delline (void);
    int _Cdecl gettext (int left, int top, int right, int bottom,
    void *destin);
    void _Cdecl gettextinfo (struct text_info *r);
    void _Cdecl gotoxy (int x, int y);
    void _Cdecl highvideo (void);
    void _Cdecl insline (void);
    void _Cdecl lowvideo (void);
    int _Cdecl movetext (int left, int top, int right, int bottom,
    int destleft, int desttop);
    void _Cdecl normvideo (void);
    int _Cdecl puttext (int left, int top, int right, int bottom,
    void *source);
    void _Cdecl textattr (int newattr);
    void _Cdecl textbackground (int newcolor);
    void _Cdecl textcolor (int newcolor);
    void _Cdecl textmode (int newmode);
    int _Cdecl wherex (void);
    int _Cdecl wherey (void);
    void _Cdecl window (int left, int top, int right, int bottom);
    har *_Cdecl cgets (char *str);
    int _Cdecl cprintf (const char *format, ...);
    int _Cdecl cputs (const char *str);
    int _Cdecl cscanf (const char *format, ...);
    int _Cdecl getch (void);
    int _Cdecl getche (void);
    char *_Cdecl getpass (const char *prompt);
    int _Cdecl kbhit (void);
    int _Cdecl putch (int c);
    int _Cdecl ungetch (int ch);

    第二点:
    你没弄清getch()的用法。谨记如下:
    getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回,getch返回值是用户输入的ASCII码,出错返回-1.输入的字符不会回显在屏幕上.getch函数常用于程序调试中,在调试时,在关键位置显示有关的结果以待查看,然后用getch函数暂停程序运行,当按任意键后程序继续运行.
  • 相关阅读:
    android raw与assets区别
    android 反编译
    sql 随笔
    控件EditText
    android 监听Home键
    android tab之间滑动切换界面功能
    android listview 总结
    SAP云平台上两个ABAP系统实例之间的互连
    什么是SAP OData Model Creator
    Netweaver和Windows,Ubuntu的数据共享
  • 原文地址:https://www.cnblogs.com/wmxl/p/4662715.html
Copyright © 2011-2022 走看看