なぜこのプログラムの結果が 5621 なのか疑問に思っていました。
#include <stdio.h>
main()
{
int i=56;
printf("%d\n",printf("%d",printf("%d",i)));
getch();
}
なぜこのプログラムの結果が 5621 なのか疑問に思っていました。
#include <stdio.h>
main()
{
int i=56;
printf("%d\n",printf("%d",printf("%d",i)));
getch();
}
と同等です
#include <stdio.h>
main()
{
int n, i = 56;
n = printf("%d",i);
n = printf("%d", n);
n = printf("%d\n", n);
}
printf は書き込まれた文字数を返します。
printf()
印刷された文字数を返します。
printf("%d",i)
値を出力します56
。
printf("%d",printf("%d",i))
は を出力56
し2
、 の文字数を出力し56
ます。
printf("%d\n",printf("%d",printf("%d",i)))
を出力56
し、次に2
の文字数、つまり を2
出力します1
。