プロが教えるわが家の防犯対策術!

BCCと同梱されているstdio.hのエラーなのですが、
stdio.hのエラーは他では出なかったので、
ソース自体がおかしいのかと思っていますが、よく分かりません。
一応ソースを載せます。
#include <stdio.h>
int main(int argc, char *argv[])
{
if(argv[1] == "")
{
printf("---(Ver1.00.01)\n");
printf("easy.exe [filename]\n");
printf(" [filename] - ファイル名を指定してください.\n");
}
return 0;
}
これによって次のエラーを吐いてきます。
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\_stddef.h 53: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\_stddef.h 72: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 51: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 104: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 105: 宣言が正しく終了していない
エラー E2293 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 140: ) が必要
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 150: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 151: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 152: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 154: 宣言が正しく終了していない
エラー E2293 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 155: ) が必要
エラー E2293 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 156: ) が必要
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 160: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 161: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 162: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 164: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 165: 宣言が正しく終了していない
エラー E2141 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 166: 宣言の構文エラー
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 172: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 173: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 174: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 175: 宣言が正しく終了していない
エラー E2141 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 177: 宣言の構文エラー
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 181: 宣言が正しく終了していない
エラー E2040 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 188: 宣言が正しく終了していない
エラー E2228 C:\[本名のローマ字表記] Program Files\Borland\bcc32\include\stdio.h 188: エラーあるいは警告が多すぎる
stdio.h,_stddef.hのソースは一切変えたりしていません。
また、BCCのエラーは、stdio.hとprintfを抜いて
int main(int argc, char *argv[])
{
if(argv[1] == "")
{

}
return 0;
}
としたときに
宣言が正しく終了していない
と表示されます。

環境は
WindowsXP SP1
BCC Developer
です。

よろしくお願いします。

A 回答 (4件)

もしNO3さんの方法を試してもダメで、使用しているのが試供版のBCCでしたら、Borlandフォルダ以下をルートに変えてみてください。



スペースを含むパスに弱いのかもしれません。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
BCCのバージョンは5.5.1で「猫でも分かるC言語プログラミング」という本から入手しました。
もしかしたら、1839ccさんの言うようにスペースを含むパスに弱いかもしれないので、
また今度ルートを変えてみようと思います。

お礼日時:2007/03/07 11:17

>stdio.hのエラーは他では出なかったので、


>ソース自体がおかしいのかと思っていますが、よく分かりません。
bcc32.cfg
ilink32.cfg
を設定しましたか?
それとパス設定
こちらのbcc551ではコンパイルは、とおりますよ
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
一応setbccを使ってbcc32.cfg,ilink32.cfg,環境変数は設定済みです。
それでも上手く行きませんでした。

お礼日時:2007/03/07 11:14

BCC Developerでソースをコピーしてコンパイルしましたがエラーは出ませんでした



質問とは関係ないと思われますが
argv[1] == ""
は間違いですね
argcの値でチェックしたほうがいいと思います
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
猫でもわかるC言語プログラミングという本を見ると
argcの値は自身までのパス+自身の名前となっていたので自分の意図していたもの(コマンドラインからのオプションだけを取得する)では無いので、
argcの値ではチェックしませんでした。

お礼日時:2007/03/07 11:12

>BCCと同梱されているstdio.hのエラーなのですが、



当方のBorland C++ Compilerでは、その現象には見舞われませんでした。
Borland C++ Compilerをもう一度インストールしてみてはいかがでしょうか。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
このソースとは違うソースだとstdio.hからエラーを出してこないので、多分ファイルが欠けていることは無いと思っています。

お礼日時:2007/03/07 11:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!