ابتدا برنامه را اصلاح کنید و تورفتگیها را رعایت کنید.
main()
{
char a;
a=getche();
}
بهتر بود دستور کامپایل را هم مینوشتید.
$ gcc -Wall code.c -o code
اجرا با
./code
به هشدارهای کامپایلر توجه کنید.
اگر میخواهید فقط یک کاراکتر از ورودی بخوانید برنامه را به این شکل اصلاح کنید.
#include <stdio.h>
int main()
{
char a=0;
a=getchar();
printf("you enter: %c", a);
return 0;
}
تابع
getch در هیچ استانداردی از زبان C وجود نداره نباید از اون استفاده کنید.
تابع استاندارد
getchar است.
برای اطلاعات بیشتر صفحهٔ man را ببینید.
man getchar
NAME
fgetc, fgets, getc, getchar, ungetc - input of characters and strings
SYNOPSIS
#include <stdio.h>
int fgetc(FILE *stream);
char *fgets(char *s, int size, FILE *stream);
int getc(FILE *stream);
int getchar(void);
int ungetc(int c, FILE *stream);
DESCRIPTION
fgetc() reads the next character from stream and returns it as an unsigned char cast to an int, or EOF
on end of file or error.
getc() is equivalent to fgetc() except that it may be implemented as a macro which evaluates stream
more than once.
getchar() is equivalent to getc(stdin).
اگر کتب یا منابع شما به شکل نخستین برنامه است توصیه میکنم در اونها تجدید نظر کنید.
اینجا دو منبع معرفی شده است.
کتاب زیر هم میتونم به اون دو تا اضافه کنم.
Modern C for Absolute Beginners
A Friendly Introduction to the C Programming Language
Slobodan Dmitrović
Apress