Using C++ on Windows XP, Windows 7 and Linux.
Reading the fopen documentation (http://www.cplusplus.com/reference/cstdio/fopen/) about filename:
C string containing the name of the file to be opened. Its value shall follow the file name specifications of the running environment and can include a path (if supported by the system).
What does "running environment" mean in this context? The operating system or file systems?
How do I determine what is supported filename for various platforms (without doing trial and error) ?