• ベストアンサー

C言語で、string.h conio.hを使いたい

madmanの回答

  • madman
  • ベストアンサー率24% (612/2465)
回答No.4

[C machine]は、フリーソフトのC言語学習ツールですよね? 展開したファイルにIncludeディレクトリに、ヘッダが有りますが、そこに入っている以外のコマンドは、使えないと思います。 また、getch()は昔のMS-Cにあったコマンドですよね?たしか、キー入力で待ちが発生せずに抜けるコマンドだったと記憶していますが、ANSI-Cには同様のコマンドがないので、通常は使えないですよ。

関連するQ&A

  • C言語のヘッダーファイルの意味と使い方

    現在、C言語を学習ちゅうです。以下のヘッダーファイルの意味と使い方、後、読み方も教えて下さい。 #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <tchar.h> #include <ctype.h> #include <string.h> 後、カウンター変数の意味と使い方も知りたいです。

  • <conio.h>?

    C Machineをダウンロードして、プログラムを作ったのですが、エラーで「インクルードファイル<conio.h>はオープンできません」と表示されました。なぜオープンできないんでしょうか?わかる方、教えてください。

  • C言語プログラム

    したのプログラムでgetch()の代わりにscanf()を使って、入力した数が負なら終了、正なら"次の数を入力してください"と表示してループを続けるプログラムを作りたいのですが、どこを変えればよいのですか? #include<stdio.h> #include<conio.h> void main() { int i=1,sum=0; char c='m'; while(c!='e')//eでない限りwhileループを実行する { sum=sum+i; printf("\n1 kara %d madewo tasuto %d desu.\n",i,sum); i++; printf("nanikakeywo oshitekudasai.owaru tokiha 'e'\n"); c=getch(); } printf("loopwo nukemashita\n"); getch(); }

  • c言語

    #include<stdio.h> #include<conio.h> void main() { int i=1,sum=0; char c=\'m\'; while(c!=\'e\')//eでない限りwhileループを実行する { sum=sum+i; printf(\"\\n1 kara %d madewo tasuto %d desu.\\n\",i,sum); i++; printf(\"nanikakeywo oshitekudasai.owaru tokiha \'e\'\\n\"); c=getch(); } printf(\"loopwo nukemashita\\n\"); getch(); } while(c!=\'e\')をwhile(c>0)にして実行したい場合はcharをintにかえて、scanfを使わなければならないのはわかりますが、どこを変えればよいか分かりません。ちなみに、while(c>0)に変えた場合に、正の数を入力した後に、「次の数を入力してください」という文を表示してからくりかえす方法をおしえてください。

  • C言語 

    C言語でAとBがじゃんけんをして勝ち負けを出力するプログラムをつくりたいのですが、間違いを教えてください。(AがgでBがcならAの勝ち。AがgでBがpならBの勝ち。AがgでBがgなら引き分け。) #include<stdio.h> #include<conio.h> void main() { int A,B; printf("文字を入力せよ"); scanf("%d",&A); scanf("%d",&B); if(A=='g'||B=='c') { printf("Aの勝ち"); } if(A=='g'||B=='p') { printf("Bの勝ち"); } if(A=='g'||B=='g') { printf("引き分け"); } getch(); }

  • string.h内でエラー

    Visual C++ 2005でプログラムを組んでいます。 あるプログラムをビルドすると以下のようにstring.h内でエラーが大量に発生します。string.hをインクルードしないとエラーは出ないことからおそらくstring.hまわりの設定がおかしいとは思うのですがよくわかりません。 エラー 2 error C2144: 構文エラー : 'char' は ')' によって先行されなければなりません。c:\program files\microsoft visual studio 8\vc\include\string.h 136 エラー 3 error C2144: 構文エラー : 'char' は ';' によって先行されなければなりません。c:\program files\microsoft visual studio 8\vc\include\string.h 136 エラー 5 error C2143: 構文エラー : ';' が ',' の前にありません。c:\program files \ microsoftvisualstudio8 \ vc\ include\ string.h 136 宜しくお願いします。

  • C言語(while構文)

    #include<stdio.h> #include<conio.h> void main() { int i=1,sum=0; char c='m'; while(c!='e')//eでない限りwhileループを実行する { sum=sum+i; printf("\n1 kara %d madewo tasuto %d desu.\n",i,sum); i++; printf("nanikakeywo oshitekudasai.owaru tokiha 'e'\n"); c=getch(); } printf("loopwo nukemashita\n"); getch(); } getch()の代わりに、scanf()を使って整数値を入力させ、負の数が入力されたら終了するプログラム(正を入力したら「次の数値を入力せよ」とだして、繰り返す。)を造りたいのですが、どこを変えればよいか教えてください。

  • string.h とかって何?

    #include で最初に含むファイルっていったい何者なんでしょうか? rand()を使うにはstdlib.hをインクルードしますし、printfのような入出力関係にはstdio.hを、文字関係ならstring.hを・・。 それはわかるのですが、これは、それぞれのヘッダファイルに自作関数の集合のようなものが入っていると考えるのは間違いなんでしょうか? 例えば、strcpyを使用するにはstring.hをインクルードするべきですが、 それはstring.hの中に char *strcpy(char *s1, const char *s2) {   char *p = s1;   while (*s1++ = *s2++)     ;   return (p); } みたいな記述が入っていると想像するのは間違いですか? 自作関数を集めてヘッダファイルにする事出来ますけど、これらは違うんですか? これだとprintfとかどうやって実装しているんだって思ってしまって・・。 直接stdio.hを開いてみたものの意味不明で、其の中にさらにある.hファイルも開いてみましたがよくわかりませんでした・・。 すみませんが、よろしくお願いします><

  • linux上でgetchを使いたい

    linux上でgetch()を使おうと思い、<conio.h>をインクルードしたのですが、未定義のエラーが出てしまいます。どうやら、linuxでは、<conio.h>が無い?みたいなのですが、どうやったら、getch()を使用できるようになるのでしょうか??

  • 何を行っているのか分かりません(C言語)

    #include <stdio.h> #include <stdlib.h> #include <conio.h> enum transport {car, train, airplane, bus} tp; char trans[][20] = { "車", "電車", "飛行機", "バス" }; int main(void) { printf("キーを押して移動手段を選んでください: "); /* プログラムを実行するたびに新しい乱数を生成する */ while(!kbhit()) rand(); getch(); /* 文字を読み込んで廃棄する */ tp = rand() % 4; printf("%s", trans[tp]); return 0; } 【質問】 上記のプログラムで while(!kbhit()) rand(); getch(); のコードが全体的に何を行っているのか分かりません。 1.「while(!kbhit())」でキーが押されたら繰り返しを終了する。 2.繰り返しが終了するまで「rand();」で乱数を発生し続ける。 ぐらいしか分かりません。 「文字を読み込んで廃棄する」コメントはどういう事なのか分かりません。 教えて頂けないでしょうか?