Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
以下のように、自分自身を印刷できるプログラムを見てきました。
main(a){printf(a,34,a="main(a){printf(a,34,a=%c%s%c,34);}",34);}
私の質問は、関数aに型を指定せずに渡すことができるのはなぜですか? 関数の引数がまたは mainであることは知っています。それで、ここでの意味は何ですか?mainvoidargc, argva
a
main
void
argc, argv
これは、C (K&R、C89)の暗黙の int機能です。タイプを省略した場合はint、パーサーによって想定されました。IIRC C99 では廃止とマークされています。また、次のような宣言を書くこともできました
int
static foo; /* static int foo; */