kbhit( ) problem

Posted on 2004-04-14
Last Modified: 2012-05-04
theres problem with kbhit() function. my program takes input from user (from keyboard) and specifies which button he has pressed...but due to the getch the program terminates if any key is pressed..the message i get later is that there was an illegal operation and hence terminated.
can someguys help me out..
Question by:mythgops
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
LVL 13

Expert Comment

ID: 10822456
Can you please post some lines of code and the exact error messages.

Author Comment

ID: 10822822

friends & experts:
can anyone tell me which all libraries do i need to work on windows programming..i came to know that c++ has no GUI i have to go thru the win32 api tutorials..
i have just downloaded <windows.h> and <commdlg.h> header do i need to download more header files for win32 api to work on my turbo c++?

Author Comment

ID: 10822871
friends & experts & Steh:

i wrote the following code:

#include <windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
    MessageBox(NULL, "Goodbye, cruel world!", "Note", MB_OK);
    return 0;

i got the error message as:
type mismatch in redeclaration in pascal winmain..parameter hinstance..hprevinsatnce..lpcmdline is never used
hope u could help

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

LVL 13

Accepted Solution

SteH earned 125 total points
ID: 10822970
Windows has a GUI facility: MFC.

but since you mention Turbo C++ you are using an older version of a borland compiler. Depending on the version of it you have either OWL or TurboVision as GUI framework.

windows.h includes several other files internally depending on defines done before. Maybe some of them are missing which define/redefine HINSTANCE or LPSTR. Normally those files should all come with the compiler. Perhaps you have to look where they are hidden. Is there a legal place for downloading them not in connection with a compiler?
LVL 11

Expert Comment

ID: 10823087
try changing the calling convention to PASCAL.

#include <windows.h>

int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
LVL 13

Expert Comment

ID: 10823264
WINAPI should translate into PASCAL if available. VC++6 and later don't support PASCAL but WINAPI is changing linking options to achieve the same in those cases. So I would suggest to leave WINAPI as it is but try to see how WINAPI is defined in your case (do you hae the correct header file in your include search path?).
LVL 30

Expert Comment

ID: 10823370
If you're creating a WIN32 console application, you don't need <windows.h>

If you're trying to convert a program for Turbo C++ to VC++, the best thing to do is trying making a WIN32 console application.
It shouldn't require that much modifications.

Exactly what type of application are you trying to build, and what compiler are you using?

Author Comment

ID: 10825408
am using turboc++ complier..need to start making games..
for that i need a response from key board..which unfortunately is not happening..some required header files seems to be missing.

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

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

This article shows you how to optimize memory allocations in C++ using placement new. Applicable especially to usecases dealing with creation of large number of objects. A brief on problem: Lets take example problem for simplicity: - I have a G…
Container Orchestration platforms empower organizations to scale their apps at an exceptional rate. This is the reason numerous innovation-driven companies are moving apps to an appropriated datacenter wide platform that empowers them to scale at a …
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…

749 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