4 ms·
This code has a bug that can cause the count to be overreported. The last `file.Read` may only partially fill the buffer, but this code will look for 1s in the
by cakoose 5y ago
This code has a bug that can cause the count to be overreported. The last `file.Read` may only partially fill the buffer, but this code will look for 1s in the entire buffer.
(This bug won't affect the performance comparison, but I was just reminded of how error prone these kinds APIs can be vs the PHP/Python route of having the library function just allocate a new buffer each time.)
- kerblang 5y agoWould something like this help? (No of course I haven't compiled it.) int len; while ((len=file.Read(buf,0,buf.Length)) > 0) { for (int i=0; i<len; i++_) { if (buf[i] == '1') { counter++; } } }