For every C/C++ programmers, fopen may be one of the most familiar functions. Taking myself as instance, I used to use it quite freely, as it's free lunch. But there's no free food ever -- the FILE* number you open at the same time in one single process cannot surpass 512 as default. It's no larger than 2048 even with _setmaxstdio()'s help.
See? This constraint is so covert & hard to find in a large project -- it's been cost 2 days or more on two people, including me.
We'll definitely meet many submerged rocks while devoting yourself to large projects. Many of these hide in the corner you thought it's always been safe and which is not, and some just come from the place outside your code of the projects.
So, take care~