ideoneでのruntime error

アバター
五反田
記事: 21
登録日時: 15年前
住所: 千葉

ideoneでのruntime error

投稿記事 by 五反田 » 14年前

code golfコミュで出された問題について考えてみます。

簡単なもの。
引数が合ってなさそうなのに、何でコンパイルできちゃうんでしょうね。

CODE:

main(){
	putc();
}


ポインタへ書き込のアクセスをするもの。

CODE:

int *n;
 
main(){
	++*n;
}

以下のような読み取りしかしないようなものだと、エラーにならないようです。
ただ、自PCで試したところ、cygwinのgcc(4.3.4)では、Segmentation faultになるんですよね。

CODE:

int *n;
 
main(){
	n||*n;
}

アバター
あーる@Reputeless
記事: 84
登録日時: 15年前

Re: ideoneでのruntime error

投稿記事 by あーる@Reputeless » 14年前

コミュ主より。

CODE:

main(){
	putc();
}
については、

#include

を入れるとコンパイルエラーになりますね。
引数チェックには、関数のプロトタイプ宣言が必要なようです。

ポインタ周りは環境依存なところがありそうなので、共通のオンラインコンパイラを用いての評価ということにさせていただいてます (╹◡╹

アバター
五反田
記事: 21
登録日時: 15年前
住所: 千葉

Re: ideoneでのruntime error

投稿記事 by 五反田 » 14年前

>>あーるさん

なるほど、そういうところで引数のチェックを行っているんですか。
短い関数を探せばもう少し縮められるかもしれないですね。探してみようと思います。