[...] de_DE und de_CH ist das kein Wunder, denn die sind auf meinem System gar nicht vorhanden, en_US aber sehr wohl. Das hätte eigentlich gehen müssen. Hmm ...
Eben festgestellt: Wenn ich die locale-Definition vollständig angebe (also "en_US.UTF-8"), dann geht der Aufruf von setlocale() in Ordnung, und dann bekommt strcoll() auch ein abweichendes Ergebnis raus, nämlich -7. Okay, der Zahlenwert -7 ist für mich nicht nachvollziehbar, aber entscheidend ist ja nur, ob größer, kleiner, oder gleich Null. Das Vorzeichen hat sich zumindest gegenüber der locale "C" umgekehrt, die beiden Strings "a" und "A" werden folglich genau andersrum sortiert.
Diese Nachforschungen und Erkenntnisse sind natürlich nur einem erfahrenen EDVler möglich und es bestätigt meinen Eindruck, dass hier ein gewisses Chaos herrscht - daher auch nirgendwo eine klare Beschreibung für "Greenhorns" zu finden.
Ich habe bei Word noch nie Unterschiede in der Sortierung festgestellt, wenn ich auf unterschiedlichen Rechnern gearbeitet habe (aber vielleicht ist es mir nur nicht aufgefallen?)