• 締切済み

cコンパイルができません!!(>_<)

void main (void) { ("kamiwasinda"); } というソースをex01.cという名前で保存して、コンパイルでコンパイルしたのですが、 インクルード ファイルstdio.hが見つかりません と表示されて、コンパイルできません!!!(>_<) どうすればコンパイルできるんですか?教えてください!!!

みんなの回答

noname#77845
noname#77845
回答No.2

#1です。 「ソースの先頭に #include <stdio.h> を付け加えて、ソースファイルが入っている同じフォルダにstdio.hを取り込む」 じゃなくて、stdio.hは環境が正しくインストールされていれば必ずあると思います。なので、環境が正しく構築されていない物と思われます。 因みに、コンパイラは何ですか? また、前の回答でも書きましたが、このソースはコンパイルできても何も実行しません。「何がしたい」のですか?

noname#77845
noname#77845
回答No.1

インクルードファイルについては、環境をきちんと整えて「#include <stdio.h>」を付け加えればいいんだろうけど、このソースは何もしないよ? 何がしたかったんでしょう?

niches
質問者

お礼

ソースの先頭に #include <stdio.h> を付け加えて、ソースファイルが入っている同じフォルダにstdio.hを取り込む ということでしょうか?

関連するQ&A

  • Cコンパイラがうまく作動しない

    #include <stdio.h> void main(void) { ("表示するメッセージ"); } を、 ex01.cという名前で保存し、コンパイルしたら、 「インクルードファイルstdio.hが見つかりません」と表示されてコンパイルできません 何がいけないんでしょうか!?

  • C++のコンパイルエラーが

    おこります。 --------------------------------- #include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } -------------------------------------- をコンパイルするのですができません。 以下のエラーが出ます。 --------------------------------------- エラー E2209 sample.c 1: インクルードファイル 'stdio.h' をオープンできない 警告 W8065 sample.c 5: プロトタイプ宣言のない関数 'printf' の呼び出し(関数 main ) *** 1 errors in Compile *** -------------------------------------

  • C言語で乱数がうまく効きません。下記のソースでコンパイルして実行すると

    C言語で乱数がうまく効きません。下記のソースでコンパイルして実行すると結果が130固定となってしまいます。 #include <stdio.h> #include <stdlib.h> int main(void){ int x; x = rand(); printf("%d",x); return 0; } 使っているコンパイラはBorland C++ 5.5.1です。何か間違いでもあるのでしょうか?よろしくお願いします。

  • 分割コンパイルの方法がわかりません‥(Studio.NET)

    mainとsubという2つのcppファイルと各ヘッダファイルで分割コンパイルを試みましたがうまくいきません・・。 何が間違っているのでしょう・・。 エラーメッセージ error LNK2005: "char * a" (?a@@3PADA)は既にmain.objで定義されています。 fatal error LNK1169: 1つ以上の複数回定義されているシンボルが見つかりました。 と表示されます。ファイルソースは以下です。どなたか教えてください>< ----------(main.h)---------- char a[100]; ----------(main.cpp)---------- #include<stdio.h> #include "main.h" #include "sub.h" int main(){  sprintf(a,"hello.");  sub_write();  return 0; } -----------(sub.h)----------- void sub_write(); -----------(sub.cpp)------------- #include <stdio.h> #include "main.h" #include "sub.h" void sab(){  printf("%s\n",a); } return; }

  • コンパイルできない

    C言語のプログラムをはじめたばかりの初心者ですが、 "smp1.c"というソースファイルをメモ帳でつくり、コマンドプロンプトで上でコンパイルしようとしたのですが、うまくいきません。 smp1.cファイルの内容は #include <stdio.h> int main(void) { printf("Hello\n"); return 0; } となっています。cworkというディレクトリにすべてのプログラムを保存しています。 コマンドプロンプト上でcworkディレクトリに移動し"C:\cwork>" の後に ”cl smp1.c ” とタイプしてenter を押しても 'cl' is not recognized as an internal or external command, operable program or batch file. と表示されコンパイルできません。 一体どうすればいいでしょうか? 初心者なので説明不足かもしれませんが その際は補足しますので、どうが教えてください.

  • C言語プログラミングの文字列を出力するプログラムについて

    ちょっとお聞きしたいのですが、 #include<stdio.h> void main(void) { printf("Hello World\n"); } と書いてコンパイルしたら インクルードファイル ’stdio.h’をオープンできない って出て Hello Worldってでない、、、 ちゃんとBorlandもダウンロードしたしcd設定もしたんだけど、 何が悪いのかわかりません。

  • cではよくてc++ではダメな理由

    #include <stdio.h> #include <stdlib.h> int main(void) { int *x; x = calloc(1, sizeof(int)); if (x == NULL) puts("記憶域の確保に失敗しました。"); else{ *x = 57; printf("*x = %d\n", *x); free(x); } return 0; } 上のソースなのですがcallocの戻り値がvoidなのでintにはキャストしてくれみたいなことを コンパイラに言われます。 cではコンパイルできてc++ではコンパイルできないのはなぜでしょう。

  • VisualStudio.netのC++でC言語の勉強をしたいです

    VisualStudio.netのC++でC言語の勉強をしようと思っているのですが C言語のコンパイルの仕方がわかりません。 新規プロジェクト>>WIN32>>win32コンソールプロジェクト でプロジェクトを開きソースを書いてビルドしてみると エラー出てしまいました。 「fatal error C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。」 ソースは以下のとおりです。 #include <stdio.h> void hello(void); void hello(void) { printf("hello"); return; } int main(void) { hello(); return 0; } C言語をコンパイルする方法に間違ったことをしているのでしょうか? それともソースのバグなのでしょうか? 初心者質問ですがよろしくお願いいたhします。

  • C言語をコンパイル後の膨大なファイルについて

    先日このサイトで、古いC言語のソースを現在に生き返らせる ことについて皆さんからいろいろと教えていただきました. 本当に有難うございました. お礼を申し上げます. お蔭様で、昔々の printf 時代のソースが、C++でコンパイル出来ました. 上位互換の意味がよくわかりました. 具体的な、コンパイルの手法については、「猫でもわかる・・・」の説明にに従いました. ところが、コンパイルの結果について、また頭をひねっています. ファイルの格納先としては、H:\C_PlusPlus\Source を指定し、 ファイル名は Ex_001.c としました. 私としては、コンパイルすれば、objとexeのファイルくらいが 追加されるだろうと、軽く考えていました. ところが膨大な数のファイルが出来上がりました. まず、H:\C_PlusPlus\Source に、Ex_01と言うフォルダが出来ました. その中に、debug と,Ex_001と言う二つのフォルダ、 Ex_001.ncb, Ex_001.sln, Ex_001.suo と言う三つのファイルが 出来ました. debugフォルダの中身は、Ex_001.exe, Ex_001.ilk, Ex_001.pdb の 三つのファイルです. Ex_001フォルダの中身は、debug と言うフォルダと、Ex_001.proj, Ex_001.projNEC・・・, Ex_001.c の三つのファイルです. さらに、debugフォルダには、次の8ケのファイルが入っています. BuildLog.htm, Ex\1.exe.embedded.manifest, Ex\1.exe.embedded.manifest.res, Ex_001.intermediate.manifest, mt.dep, Prog_001.obj, vc80.idb. vc80.pdb この莫大な数のファイルがいったい何であるのか、見当もつきません. 5,6冊ほど、C++の本を買って来ましたが、どういうわけか、どの本も、ビルドして、デバッグせよと言うだけで、それから先の説明が見つかりません. お手数かけて恐縮ですが、どなたかそのあたりについてご教示をお願いします. または、この辺について記述されている書籍をご紹介ください. よろしく、お願いします. 追伸 ずっと昔、コンパイルしてリンクしていたころのことを思い出して、 ソースとexeファイル以外は全部消して見ました. それでも結構、exeファイルは動きます. 問題ないようです. いったい、あの沢山のフォルダやファイルは、はたして、保管の必要があるのでしょうか? テストしたプログラムは、最簡単なものとして、次のとおりです #include "stdio.h" int main() { int num; printf (" My name is Bill \n"); scanf ("%d", &num); return 0; }

  • llc system("dir").c

    llcのDOSコンパイラでsystem("dir");というソースを 含めると、その部分で実行時に 正しいコマンド インタープリタの名前を入力してください. (例 : C:\COMMAND.COM) >> というメッセージが表示されます。 #include <iostream.h> int main() { system("dir"); return 0; } このソースをDOSコンパイラ用に書き換えたいのです。 #include <stdio.h> int main() { system("dir"); return 0; } このようにするとllcでコンパイルできますが、おそらく #include <stdio.h>しか使っていないためにsystem関数がうまく 動作しないようです。 どうしたらシステム関数のようなことができますか?

専門家に質問してみよう