[Last Call] Learn about multicloud storage options and how to improve your company's cloud strategy. Register Now

x
?
Solved

Ascii Code for Enter and Arrow

Posted on 2000-03-29
8
Medium Priority
?
1,202 Views
Last Modified: 2008-02-20
Can somebody tell me what the ascii code is for the ENTER key and the ARROW keys on the keyboard?  I am using VisC++ 6.0 on NT4.  I need to move a cursor on screen around, and I need to read arrow key inputs from the user.  Thnx!
0
Comment
Question by:junkyboy
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 

Expert Comment

by:BCheatham
ID: 2667770
ascii code for arrow
up=    24
down=  25
right= 26
left=  27

enter is the same as (CR) which is ascii code 13
0
 

Author Comment

by:junkyboy
ID: 2668306
This is what I have, and the [ENTER] key works, but the arrows don't.  Can you tell me what the problem is in here:

void movecursor(int * ox, int * oy)
{
      int x=*ox, y=*oy, fx=0, fy=0, escape=0;
      char set;
      textattr(26);
      do{
            gotoxy(x,y);
            cout << "[" << endl;
            gotoxy(x+2,y);
            cout << "]" << endl;
            set=getch();
            gotoxy(x,y);
            cout << " " << endl;
            gotoxy(x+2,y);
            cout << " " << endl;
            switch(set)
            {
                  case (25): fy=y; fx=x; y+=2; break;
                  case (24): fy=y; fx=x; y-=2; break;
                  case (27): fy=y; fx=x; x-=4; break;
                  case (26): fy=y; fx=x; x+=4; break;
                  case (13) : escape=1; break;
                  default   : break;
            }
            if ((x<2) || (x>38))
                  x=fx;
            if ((y<3) || (y>21))
                  y=fy;
            if ((((x>=10) && (x<=17)) || ((x>25) && (x<32))) && ((y>=10) && (y<=14)))
            {
                  x=fx;
                  y=fy;
            }
      }while(!escape);
      textattr(28);
      gotoxy(x,y);
      cout << "[" << endl;
      gotoxy(x+2,y);
      cout << "]" << endl;
      textattr(31);
      *ox=x;
      *oy=y;
}
0
 
LVL 2

Expert Comment

by:AndrewRodionov
ID: 2668388
Hi junkyboy,

Do you use Microsoft Visual C++ 6.0? And how are you able to use such DOS-specific function like gotoxy() and textattr()?
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 

Author Comment

by:junkyboy
ID: 2669263
I'm creating a "Win32 Console Application" project using MS VisC++ 6.0, and I was able to use those functions by creating a customized version of those functions (got them from a previous answer by neitod).
0
 
LVL 1

Expert Comment

by:yarond
ID: 2679374
It's your code... Why don't you put a breakpoint after your getch(), and just see what is it that your recieve when you press the arrow keys?
0
 

Author Comment

by:junkyboy
ID: 2684066
Thnx, but I already got the codes off a book.
0
 

Accepted Solution

by:
kishore_joshi earned 160 total points
ID: 2689430
Hai,
The ascii code for enter key is 13.

And for the arrow keys u need to use the scan-code .

KEYS                  SCAN CODE    

up arrow key          72
down arrow key     80
left arrow key         75
right arrow key       77

home key               71
end    key               79
ins     key                82
del    key                83


0
 

Author Comment

by:junkyboy
ID: 2690035
I've already got the code, as I mentioned above.  But, thanx anyways :)
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
The viewer will learn how to use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.
Suggested Courses

656 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question