#include <stdio.h>
int main(){
(&puts)("&puts");
(puts)("puts");
(*puts)("*puts");
(****puts)("****puts");
return 0;
}
怪しげで不自然だけど、正しいC言語ではコンパイルエラーにならない。
4つの puts
はきちんと呼び出され、引数の文字列が標準出力に出る。
#include <stdio.h>
int main(){
int a=12;
int b={34};
int c={{56}};
printf( "%d %d %d\n", a, b, c );
return 0;
}
こっちは今ひとつ自信がないけど、これもたぶん全部合法。
a, b, c は 12, 34, 56 で初期化される。