K&R のサンプル プログラムの 1 つをいじっていたところ、これが見つかりました。
#include <stdio.h>
main()
{
double nc;
for (nc = 0; getchar() != EOF; ++nc)
;
printf("%lf\n", nc );
putchar(nc);
}
3.000000 の出力を生成し (これは完全に予想していました)、次にハートの付いた新しい行 (まったく予想していませんでした) を生成します。なぜハートがついた新しい行を出力するのでしょうか? データ型を混在させることと関係があると思います。