MacのMPW-GMでCのプログラミングについて

このQ&Aのポイント
  • MacのMPW-GMでCのプログラミングをする際にエラーが発生しました。
  • program typeでApplicationsとSIOW App.の違いや、conio.hやgetchの代わりになるものについて教えてください。
  • Cのプログラミング初心者のため、助けが必要です。
回答を見る
  • ベストアンサー

MPW-GMでのCのプログラミング

MacのMPW-GMでCのプログラミングをしていますが、まだ初心者です。Windows上で動いていたCのプログラムを持ってきてMPW-GMのprogram typeでSIOW App.と指定してコンパイルしたところ、conio.h (コンソールからのIO?)というヘッダファイルが見つからないというエラーになりました。この行を消去してコンパイルするとgetchというexternal reference(コンソールからの文字読み込み?)がunsolvedというエラーになりました。そこで教えて頂きたいのですが、 (1)program typeでApplicationsとSIOW App.の違いは  何でしょうか。 (2)conio.hやgetchの代わりになるものがあるのでしょうか。 以上よろしくお願いします。

  • Mac
  • 回答数1
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • toysmith
  • ベストアンサー率37% (570/1525)
回答No.1

1) Applicfationsはファイルタイプ'APPL'を持つMacintoshアプリケーションを作成します。 SIOW AppはMPW Shellで動作するコンソールアプリケーションを作成します。 2) 多分1文字入力したいんだと思います。 MPWでコンソールアプリケーションを作ったことがないので想像なんですけど setbuf(stdin,NULL); してから getchar(); でできませんか?

関連するQ&A

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

    C言語の勉強を「C machine」というソフトを使ってしているのですが,      #include<   >             ↑     ここに入れるファイル?で、string.h conio.hという のがないみたいでgetch()などが使えません。 そこで、この「string.h」「conio.h」などを導入したいのですがやり方がわからないので誰か教えてください。

  • linux上でgetchを使いたい

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

  • C言語プログラミング

    台形の面積を求めるプログラムを作りたいのですが、最後のmensekiの出力の仕方がわかりません。printf以降のプログラムを教えてください。 #include<stdio.h> #include<conio.h> void main() { int number1,number2,number3,menseki; printf("上底を入力してください:"); scanf("%d",&number1); printf("下底を入力してください:"); scanf("%d",&number2); printf("高さを入力してください:"); scanf("%d",&number3); menseki=(number1+number2)*number3/2; printf( ここがわかりません getch(); }

  • このプログラムを見てください(C言語) m( _ _ )m

    現在乱数を使ったプログラムを作っています。 下のプログラムでコンパイルではエラーがでませんが、実行するとデバッグエラーが出てきます。コンパイラにはbccを使っています。恐らく原因は別の関数でbに値を代入してそれをaに代入しているからだろうと思いますが、なぜこれがいけないのかが分かりません。 #include <stdio.h> #include <stdlib.h> #include <time.h> #include <conio.h> int ran, a=1, b, c; void test(void){ b=8; } void main(){ srand(time(NULL)); a=b;//ここを無くすとなぜかエラーが出ない。 while(1){ ran=rand()%(a*2)+1; switch(ran){ case 1: c=1; break; case 2: c=1; break; case 3: c=1; break; case 4: c=2; break; case 5: c=2; break; case 6: c=3; break; case 7: c=3; break; case 8: c=4; break; } printf("%d",c);printf("何か押してください\n");getch(); } }

  • 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#コンパイル時のエラー

    こんばんわ。全くの初心者ですので、よろしくお願いします。 現在、.NET SDKをインストールして、c#でプログラムを作ってみました。 コマンドコンソールウィンドウでcscコマンドでコンパイルしようとしましたところ次のようなエラーが出てコンパイルできません。 「プログラム'***.exe'のエントリポイントが定義されていません。」 これはどういうエラーなのでしょうか。また、どうすれば解決するのでしょうか。 教えていただきたいと思っております。よろしくお願いします。

  • 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()を使って整数値を入力させ、負の数が入力されたら終了するプログラム(正を入力したら「次の数値を入力せよ」とだして、繰り返す。)を造りたいのですが、どこを変えればよいか教えてください。

  • Cプログラムが終了しない

    MacのOSXでMPWを使ってCのプログラミングを始めました。プログラムの最後にreturn 0;を入れているのに実行すると終了しないまま止まってしまいます(エラーは起っていないようです)。今は強制終了させていますが、なぜプログラムが終了しないのでしょうか。またMPWについて詳細に解説されているサイトなどありましたら教えて頂けませんか。

  • Borland C++ Compiler 5.5 無償

    Borland C++ Compiler 5.5 を無償ダウンロードして使おうとしましたが使えません gomi.cppを以下のように作り #include <stdlib.h> #include <stdio.h> #include <conio.h> int main(void) { fprintf("please help me!\n"); getch(); return 0; } binにおいてdosプロンプトから bcc32 gomi としたのですがエラーが出ます 統合開発環境でないので大変です この無償版を使えるようにするにはどうしたらいいのでしょうか? よろしくお願いします

  • C言語に詳しい方・得意な方!!!

    #include<stdio.h> #include<conio.h> void main() { int i=1,sum=0; char c='m'; while(c!='e') { 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++はわかるのですが、Cは全くわけがわかりません!!上のプログラムまでは何とか実行してうまくできたのですが、下の問題はさっぱりわけがわかりません。教えてください? *1 うえのプログラムで使用しているgetch()の代わりにscanf()を使って整数値を入力させる。負の値を入力されたら終了。それ以外の数値が入力されたときは、「tsugino suuchiwo nyuryokuseyo」とメッセージをだして、また次の数値の入力を要求し、負の数が入力されるまで終わらないプログラム。 *2 *1のプログラムに、入力された正の数値をすべて加算していき、ループ終了後にその合計を出力するプログラム。 *3 *2のプログラムで、101以上の数値は加算しないようにするプログラム。 *4 *3のプログラムでいくつ数値が入力されたかをループ終了後に表示するプログラム。 *5 あるクラスのテストの点数(0から100点)の平均をだすプログラム。