- ベストアンサー
C言語で連続したスペースを挿入するとエラーが消える理由とは?
- C言語で連続したスペースを挿入するとエラーが消える理由について教えてください。
- 授業の課題でC言語を書いていた際、連続したスペースを挿入することでエラーが消える現象に遭遇しました。この理由について詳しく教えてください。
- C言語において、なぜ連続したスペースを挿入することでエラーが消えるのでしょうか。解説をお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
そもそもの、ネタ元が不明なのでなんともですが・・・ void hoge(void) { char abc[]=" "; <- ここ } こんな感じで、ローカルスタックに一定量のサイズ確保が必要なケースで それを省略したケースでは、ありえなくはない。。のですが。 char *abc=(char *)malloc(本来必要なサイズ+1); と書くのがセオリーなケースがほとんどかとは思います。 だとしたら、その資料。。。 あんまり参考にしないほうが、あなたの為かも。 といっても、ネタ元が分からないので、何とも言えませんが、 まともなソース書いていれば、スペースの数程度で どうのこうのは、ありえないですよ~。 ただ、他の人の指摘通り、エラーにはならないはず。 実行時にエラーになるのと、コンパイル時にエラーになるのは、 次元が違う話なので(が、元ネタが分からないので、判断できず)
その他の回答 (3)
- notnot
- ベストアンサー率47% (4900/10358)
実行時エラーの場合には、データによって動作が変わることは普通です。何の不思議でもない。 質問文の文字通りの状況であれば、コンパイルエラーというのはちょっと考えにくいです。 一番ありそうなのは、IDEがコーディングルールに関する警告を出しているとか。それはエラーではないです。 次にありそうなのは、実際にあったことをあなたが正確に書けていないことですかね。
- unokwave
- ベストアンサー率58% (966/1654)
この質問は謎々ですか? エラーの原因になる要素は沢山にありますし、貴方の説明にはC言語とスペース11個ほどという情報しかありませんが、例えるなら『「日本語」「空き缶11個ほど」によってトラブルが回避できたのは何故ですか?』と訊いているのと変わりません。
- agehage
- ベストアンサー率22% (2753/12078)
これだけでは正解はわかりません 同じような例を出すなら、15文字なければエラーが出る処理なのに4文字しか入ってないとか。
お礼
みんなありがとう