• ベストアンサー

C言語での質問です

TagoSuckの回答

  • TagoSuck
  • ベストアンサー率72% (16/22)
回答No.4

一応、職業プログラマーです。 よくある事ですが、サンプル自体がコンパイルの通らない物なのでは? ちなみに、コンパイラはどんなエラーを発するのでしょうか? サンプルとエラーメッセージがあれば、今回は解決できると思いますが...。 ただ、質問は、どうやってエラー行とエラー箇所を見付けるかですよね。 基本的にはデバッガを使うのが一番早いと思います。 ある程度の規模の物を作るなら、どうしてもデバッガの使い方は覚えた方がいいですよ。

参考URL:
http://www.borland.com/jp/products/cbuilder/turbodebugger.html
noname#220054
質問者

補足

回答ありがとうございます。ご指摘のデバッガをインストールしてみます。今回どうしても解決できない問題文を載せますので、お力を貸してください。 /*個人データ照合プログラム *A君とB君のデータで、次のことが分かっている、それぞれの項目を選択し *入力すると、2人のデータが同じか、異なっているかを判定し、結果を表示する*/ /*血液型 A君 A   B君  B *出身地 長野  長野  *年齢 21  22  *経験 15ケ月  12ケ月  *自給 800円 800円*/ #include <stdio.h> #include <string.h> struct private_data { char blood; char area[5]; int old, exp, wage; }; int main() { 25 private_data Adata, Bdata; (数字は行番号です。) 26 int input; 27 int same; /*A君の規定データの入力*/ 31 Adata.blood = 'A'; strcpy(Adata.area,"長野"); Adata.old = 21; Adata.exp = 15; Adata.wage = 800; /*B君の規定データの代入*/ 39 Bdata.blood = 'B'; strcpy(Bdata.area,"長野"); Bdata.old = 22; Bdata.exp = 12; Bdata.wage = 800; /*質問の表示と選択結果の入力*/ printf("何で比較しますか?\n"); printf("1 : 血液型 2 : 出身地 3 : 年齢 4 : アルバイト経験 5 : 自給\n"); scanf("%d", &input); same = 0; /*判定と結果*/ switch(input) { case 1 : if(Adata.blood == Bdata.blood) same = 1; break; case 2 : if(strcmp(Adata.area, Bdata.area) == 0) same = 1; break; case 3 : if(Adata.old == Bdata.old) same = 1; break; case 4 : if(Adata.exp == Bdata.exp) same = 1; break; case 5 : if(Adata.wage == Bdata.wage) same = 1; break; default:printf("そんな項目番号はありません\n"); same = 2; } if(same == 0) { printf("二人は違います\n"); }else { if(same == 1) { printf("二人は同じです\n"); } } return(0); }■ D:\borland\bcc55\lesson> bcc32 kozinn.c Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland kozinn.c: エラー E2451 kozinn.c 25: 未定義のシンボル private_data(関数 main ) エラー E2379 kozinn.c 25: ステートメントにセミコロン(;)がない(関数 main ) エラー E2140 kozinn.c 26: ここでは宣言はできない(関数 main ) エラー E2140 kozinn.c 27: ここでは宣言はできない(関数 main ) エラー E2451 kozinn.c 31: 未定義のシンボル Adata(関数 main ) エラー E2451 kozinn.c 39: 未定義のシンボル Bdata(関数 main ) *** 6 errors in Compile *** このような問題文です。アドバイスをお願いします。

関連するQ&A

  • CとC++って何が違うのでしょうか?

    こんにちは。今までjavaでプログラミングしていたのですが、C言語を使わなくてはいけなくなりました。 そこで本屋さんに行って「初めてのCプログラミング」というのを買いました。それに付いてた「BorlandC++Compiler」というコンパイラをインストールして、プログラムを作成して実行しました。 昔、大学の授業ではコンパイルするとき「cc」、実行するときは「a.out」とした記憶があるのですが、これでは、「bcc」です。 もしかして、この本は、C言語ではなく、C++というCとは異なる高水準言語なのですか? C言語とC++とは全く異なるものなら、このまま、新しい本を買わないとどのような支障がでてくるでしょうか?

  • C言語でのコンパイラの作成方法

    C言語初心者のため、稚拙な文章になる可能性があることを最初にお詫びします。 現在Microsoft社のMicrosoft Visual C++ 6.0を用いてCドライブのルートにある「temp.c」というソースファイルをコンパイルするアプリケーションを作ろうと思っているのですが、ネット上で「C言語 コンパイラ 作成」等と検索しても、既にコンパイラがあることを前提としたホームページしか見つけることができず、肝心のコンパイラをどのように作ったらよいのかということが載ったホームページが見つかりません。 というわけで、今回はコンパイラをどのように作ったらよいのかというヒントだけでもいいので教えて頂けないかと思い投稿させて頂きました。 ちなみに「temp.c」はそこまで複雑なソースではなく、DOS上のアプリで、リソースやアイコンなどは用いないものです。 そもそも「コンパイラを作る」ということ自体が愚かな行為なのかと思ったりもします。 私が所持しているBcpadやMicrosoft Visual C++ 6.0に付属している既存のコンパイラを利用するということも考えたのですが、BcpadやMicrosoft Visual C++ 6.0の本体以外からコンパイラをどのように利用していいのかもわかりません。 どうぞ忌憚の無い意見をよろしくお願いします。 ちなみにOSはXPのSP3です。

  • 【C#】 C用のエディタを作りたい

    C#でC言語を記述するエディタを作成しています。 コンパイラはLSI C-86 Ver.3.30 試食版を使おうとしているのですが、 プログラムからコンパイルするやり方が知りたいです。 Textbox.textをコンパイルするとしたときのコードをご存じの方がいらっしゃいましたらどうか教えてください。 ヒント、説明しているURLなどでもかまいません。 よろしくお願いします。

  • FedraCore4でのC言語

    簡単なCのプログラムをテストしようとしたのですが、コンパイラが見つかりません。 パッケージを全部インストールしていない状況でC言語のプログラムををコンパイルするにはどうすればよいのでしょうか?

  • C言語超初心者です。

    C言語を始めたばかりで、レベルの低い内容で申し訳ないですが、よろしくお願いします。 コンパイルした文字や文字列などを、コマンドプロンプト上ではなく、画面全体をクリアにして、コンパイルした文字や文字列のみを表示するには、どのようにしたらよいでしょうか? できれば表示する位置を指定する方法も、教えていただきたいです。 使用しているのは、Tera Pad、BorlandC++5.5コンパイラーです。 よろしくお願いします。

  • C言語とC++言語

    C言語でコンパイルできC++でコンパイルできないプログラムとその逆でC++でコンパイルできC言語でコンパイルできないプログラムを教えてください。よろしく

  • プログラム全般について

    お世話になります。素人です。 プログラム、BASIC、C、VB、PERL、HTMLなど 作成するときの根本なのですが、作成するときはエディタ?なるものを 使うようなことを耳にしますが、コンパイルする、走らせるための モノと考えればよいのでしょうか? いきなり、簡単でも難しくても、wordやテキストエディタなどで 言語を作成しても動作確認、プログラムを走らせることは出来ま せんよね? そのために専用の各言語用のエディタ?コンパイラ?なるものが 必要になると考えればよいのでしょうか? いきなりC言語でプログラムを作れ、などなど根本的に何から? がよくわかりません。 その辺りをよくご存知の方、差し支えなければご回答をお願いします。

  • C言語を始めるために必要なもの

    本当にC言語のこと何も分からない状態です。まず、エディタっていうのとコンパイラっていうのが両方必要なんですか?検索したら、いっぱい出てきて、どうやって使うのかもかかれてなかったりして、一体どうすればいいのかよく分かりません。初心者でも分かりやすいエディタとコンパイラが使い方も含めて載っててダウンロードできるサイトとか教えて下さい。そもそもエディタとコンパイラは違うのかもよく分かりません。もし片方だけでもC言語が十分活用できるのであれば、そっちの方だけでもいいので、お願いします。

  • C言語の勉強にあたって

    今からC言語を勉強していく人から質問されたのですが、勉強にあたって、Cのアプリケーション(コンパイラ等)なしに実際のプログラムの動きを勉強する方法はないでしょうか? これでは漠然とした書き方ですが、例えば、インターネットのHP上でプログラミング→コンパイル→実行をシミュレーションできるようなHPはないでしょうか? こういうHPがあると、とりあえずインターネット環境とC言語の参考書があれば簡単に勉強できると思うんです。 そのようなHP、ありましたら教えてください。 何ヶ所かあるようでしたら、使い方が難しくない(初心者向け)ところが良いです。 よろしくお願いします。

  • 解きながら覚えるC言語 の次の教材

    こんにちは。 文系出身の社会人1年目の組み込み系システム開発のプログラマです。(来年度社会人2年目) 新人研修をパスし、四月頭からお客様先にてLinuxのファイル管理等を行ってきました。 今、未稼働になり言語の未修得に不安を覚えた為、 BorlandC++を使用し、 柴田望洋著の"解きながら覚えるC言語"を独学でやっています。 そろそろ上記の教材をマスターするので、ステップアップできる教材を 探しているのですが・・・何か良い教材はないでしょうか。 本来ならば、柴田望洋著の"新版 明解C言語 中級編 明解C言語シリーズ "に移行すべきでしょうが・・ 懸念点がありまして足踏み状態です。懸念点を記載します。 (下記の懸念点は、あくまでも個人的な観点であり、著書を批判しているわけではございません。) <懸念点> "解きながら覚えるC言語" のサンプルプログラムが要所要所でコンパイルエラーになる。 ⇒良書だと思って勉強したけれど ・・・独学の身である私には、 発生したコンパイルエラーに数日間躓きました(涙 "続編である中急編もそんな仕様であれば、購入を検討する" と考えています。 <教材に求めるもの> ・応用力をつけられる本 (例:カレンダー作成 等) ⇒もし今後C言語の案件がきたときに、きちんとC言語でプログラムを組める力がほしい。 基礎をマスターしたばかりの私には、"どんなプログラムを組みたいか" なんて・・・案が思い浮かばない。 ・掲載されているサンプルプログラムにコンパイルを通るものを使用し ている本 本当に困っている状況ですので、批判・中傷はご容赦願います。 以上 先輩方のご教授の程 宜しくお願いいたします。