Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

C/ C++ programming code

  1. Mar 22, 2013 #1
    Hello there!

    I typed this code and saved it as a .c file

    Code (Text):
    #include<stdio.h>
    #include<stdlib.h>
    #include<conio.h>

    int main()
    {
        int a;
        while(1)
        {
                if (kbhit())
                {
                            system("cls");
                            printf("%d ",getche());
                }
        }
        return 0;
        getch();
    }
    This code displays ASCII value of any character entered... The problem is that it being an infinite loop does not exit itself on pressing escape key.. How to handle that exception?
    And what is the equivalent of kbhit() in C++ and in which header?

    Thanks in advance
     
  2. jcsd
  3. Mar 22, 2013 #2

    jedishrfu

    Staff: Mentor

    you have to read the keyboard buffer if kbhit() returns 1 then if that character is an escape character then you can break; out of the loop.
     
  4. Mar 22, 2013 #3
    i can check using if() condition, but how to check for escape character?
     
  5. Mar 22, 2013 #4

    jedishrfu

    Staff: Mentor

  6. Mar 22, 2013 #5
    ok.. got it.. thanx.. :)
     
  7. Mar 22, 2013 #6

    rcgldr

    User Avatar
    Homework Helper

    Note that the getch() or any code after the return(0) will never get used.

    Normally to terminate user input in DOS like console windows, an "end of file" character is used, such as ctrl-D (hex 04) on Unix / Linux systems, and ctrl-Z (hex 1A) on MSDOS / Windows (in Dos console window) systems. For Windows / GUI type programs, ctrl-Z is normally the "undo" key.
     
    Last edited: Mar 22, 2013
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: C/ C++ programming code
  1. C Program (Replies: 3)

  2. C program (Replies: 0)

  3. C programming (Replies: 9)

Loading...