私は最近Ubuntuに取り組んでいます。gcc を使用して C プログラムをコンパイルすると、conio.h
存在しないというエラーが表示されます。使いたいclrscr()
、getch()
機能したい。Linux でこのヘッダー ファイルの代わりになるものを教えてください。
8 に答える
このgetch()
関数はcurses.h
(ライブラリ "curses") にあります。同じライブラリは、画面をクリアする関数を提供します。これらのリンクをチェックしてください:
system("clear");
の代わりにLinuxで使用できます。clrscr();
# include <curses.h>
int erase(void);
int werase(WINDOW *win);
int clear(void);
int wclear(WINDOW *win);
int clrtobot(void);
int wclrtobot(WINDOW *win);
int clrtoeol(void);
int wclrtoeol(WINDOW *win);
DESCRIPTION
The erase and werase routines copy blanks to every position in
the window, clearing the screen.
基本的なC言語機能の理解が不十分であるか、OPがコードをエディター/ IDEにコピー/貼り付けているだけであるため、この質問は繰り返し反対票を投じられたと思います。
同様に、system("exit");
コード内で次のように使用します。
#include<stdlib.h>
main()
{
system("clear"); //clears the screen
}
マンページを確認すると、次のように表示されます。
SYSTEM(3) Linux Programmer's Manual SYSTEM(3)
NAME
system - execute a shell command
SYNOPSIS
#include <stdlib.h>
int system(const char *command);
DESCRIPTION
system() executes a command specified in command by calling /bin/sh -c
command, and returns after the command has been completed.
During execution of the command, SIGCHLD will be blocked, and SIGINT
and SIGQUIT will be ignored.
この質問が次の重複の可能性がある場合もあります。
- Linux で C の getch() 関数を実装するには?
- Linux で <conio.h> が見つからないのはなぜですか?
- Turbo C 関数 `clrscr` および `cprintf` の GNU/Linux 置換
- C および C++ の関数 clrscr
- 「clrscr() への未定義の参照;」
- getch()、gotoxy()、delay()、clrscr() の代用
- Linux の getch() と getche() に相当するものは何ですか?
最後に、詳細と例については、以下をご覧ください。
システムコールの代わりに C コードを介して行う別の方法があります。
void clrscr(void) {
fprintf(stdout, "\033[2J\033[0;0f");
fflush(stdout);
}
ずっと前に見つけて、raspbianで正常にチェックしました。
また:
void gotoxy(int x, int y) {
printf("%c[%d;%df",0x1B, y, x);
}
お役に立てば幸いです。
よろしく。
私はいくつかのコードをいじっていました。ncurses をインストールした後、次のコードを挿入しました。
#include <stdio.h>
#include <ncurses.h>
main ()
{
system ("clear");
getchar ();
}
G++ コンパイラでは、ヘッダー ファイルsystem("clear")
で定義された関数を使用します。stdlib.h
#include<iostream>
#include<stdlib.h>
int main() {
std::cout<<"Hello Aliens:";
system("clear");
}
どうやらあなたはグーグルを試していませんでした。
直接的な代替手段はありません。
このブログ投稿: http://wesley.vidiqatch.org/code-snippets/alternative-for-getch-and-getche-on-linux/は、getch()
およびgetche()
または、libncurses を使用して必要なことを行うこともできます: http://tech.dir.groups.yahoo.com/group/linux/message/29221