conio.hが見つからない。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
yuya

conio.hが見つからない。

#1

投稿記事 by yuya » 14年前

以下のプログラムをコンパイルしたのですが,エラーが出てしまいます。解決方法をご教授願います。
環境はlinux 2.6.39.4です。またプログラムは作成途中で無駄なヘッダがあります。

プログラム(zikken.c)↓↓

コード:

#include<stdio.h>
#include<conio.h>
#include<curses.h>
#include<dos.h>
#include<stdlib.h>

void main(){
	draw();
}

void draw(){
	clrscr();
	textcolor(WHITE);
	gotoxy(12,2);
	cputs("********************************************************");
	gotoxy(12,6);
	cputs("********************************************************");
	gotoxy(12,3);
	cputs("*\n\b*\n\b*\n\b");
	gotoxy(67,3);
	cputs("*\n\b*\n\b*\n\b");
	gotoxy(14,4);
	cputs("SYMANTEC SECURITY SCAN - 2009 (QUICK SYSTEM SCANNER)");
}
gcc -g -o zikken zikken.cでコンパイルしたところ以下のエラーが出ました。
zikken.c:2:18: error: conio.h: No such file or directory
zikken.c:4:16: error: dos.h: No such file or directory
zikken.c:11: warning: conflicting types for ‘draw’
zikken.c:8: note: previous implicit declaration of ‘draw’ was here
zikken.c: In function ‘draw’:
zikken.c:13: error: ‘WHITE’ undeclared (first use in this function)
zikken.c:13: error: (Each undeclared identifier is reported only once
zikken.c:13: error: for each function it appears in.)

conio.hがないと言われたのでググッて調べてみたのですが,解決法がよくわかりません。よろしくおねがいします。

beatle
記事: 1281
登録日時: 14年前
住所: 埼玉
連絡を取る:

Re: conio.hが見つからない。

#2

投稿記事 by beatle » 14年前

Linuxにはconio.hなんてありません。代わりにtermiosを使うんだったと思います。
僕は「Linuxプログラミング―例題で学ぶUNIXプログラミング環境のすべて」という本を参考にしました。

yuya

Re: conio.hが見つからない。

#3

投稿記事 by yuya » 14年前

conio.hの代わりにtermios.hをインクルードしてみたところヘッダエラーは発生しませんでした。しかしその他のエラーが残ったままです。

clrscrやtextcolorなどの関数は使えないと思うのですが、代わりとなる関数にはどのようなものがあるのでしょうか?

ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: conio.hが見つからない。

#4

投稿記事 by ISLe » 14年前

conio.hやdos.hはMS-DOSの機能を呼び出すためのものなのでLinuxには用意されていません。

代わりにcursesライブラリを使うと良いと思います。
LinuxならGNUのncurses。

ncursesを使ってconioをシミュレートするライブラリ(というかconio.h)というのもあります。
探してみてください。

(追記)質問のソースを見たらcursesインクルードしてた。

閉鎖

“C言語何でも質問掲示板” へ戻る