D でオーディオ ファイルの振幅を読み取っています。文字列から float[] に変換しています。次のように書いています。
auto amplitudeByTime = file2string("data8.txt");//file2string returns a float[] with size I determine.
writeln(amplitudeByTime);
float[] のサイズが 1660 (またはそれ以下) の場合はすべて問題ありませんが、1661 (またはそれ以上) になると writeln は次のような例外をスローします。
std.stdio.StdioException@std\stdio.d(2431): Bad file descriptor
----------------
0x0040EA7B
0x00411F62
0x0040FD80
0x0040FDBB
0x0040F9B9
0x0040B774
0x75EDD2E9 in BaseThreadInitThunk
0x77BF1603 in RtlInitializeExceptionChain
0x77BF15D6 in RtlInitializeExceptionChain
----------------
何が問題になる可能性があるかについて何か考えがありますか?