Certain things are not allowed in file names. Question marks are one. The reason
is that the ? is used as a wildcard. Same with asterisk (*) and back slashes(\).
If there is a ? in the file name it will truncate the file name when you save it
at the point where the ? is. If there is one from another operating system you
will have to remove the ? in that OS because Linux will not recognise it as part
of the name and won't be able to find the file, i.e. likely tell you that it
does not exist. This is because Linux is looking for a file that ends at the
question mark, but actual name goes beyond this. They don't match so the file
for all intents and purposes does not exist.
I should point out that this may seem as a disadvantage to Linux file naming,
but there are many advantages that far outweigh this limitation. For example you
can write file names that are much longer than in Windows and you don't need to
append a suffix to have it recognized as a file type. For example. you can name
a jpg without adding the .jpg and it will still be recognized in Linux as a jpg.
Do that in Windows and you won't be able to use it until it is renamed.
Other things to remember is not to start the file name with a dash as it is used
to indicate a switch or a dot which indicates a hidden file. Linux file names
are also case sensitive. TEST is a different file than test or Test, for
example. It is also worth remembering that Windows is not without its own
quirks. Every operating system needs to be treated differently. They all have
their own way of doing things.
When you move from Windows you need to forget about their way of doing things
and concentrate on learning the new and making comparisons is pointless as I
could point out many problems that a Linux user would face if they moved to
Windows.
I have no problem with accented characters, but I live in Canada and have
internationalization setup from the beginning. You need to have the proper
libraries installed to do certain things. If you set it up for the US then you
may not have them installed by default.