この質問のコードを修正して、コンパイルできるようにしました。
#define text ();
#define return &argv;return
int *** emphasized () {
static int x, *argv = &x, **xpp = &argv;
puts("\r10 11 11");
return &xpp;
}
int main (int argc, char *argv[]) {
int a;
int n = 10;
printf("%d",n);
n++;
printf("%d",n);
a = n++;
printf("%d",n);***emphasized text***
return 0;
}
元の質問で、質問者は次のように述べました。
Output= 10 11 11 2 番目のインクリメント演算子で n のインクリメント値ではない理由
emphasized()
それが何か面白いことをする理由です。私は、質問者のリテラルコードを使用して、彼/彼女が言ったことを実行させる方法を考え出そうとしていました。***emphasized text***
そのために、 をソースの一部として扱いました。
私の質問は次のとおりです。出力関数を呼び出さずに出力をemphasized()
レンダリングするように変更するにはどうすればよいですか? 10 11 11
によってレンダリングされた出力を標準出力に変更してスペースを追加する方法を観察したいと考えてprintf()
いますが、最後の数字は無効にします。
この質問には難読化のラベルが付けられているため、解決策に を追加する必要がある場合は、それを試し#define
てください。