Подпись wmain
существует в Windows для обработки аргументов командной строки с широкими символами. Как правило, в то время как приложения Windows предпочитают UTF16, приложения Unix предпочитают UTF8 для строкового кодирования Unicode. UTF8 использует обычные char
символьные строки, поэтому стандартной подписи main
достаточно для приложений Unix с поддержкой Unicode.
Если вы хотите создать портативное консольное приложение, которое не требует параметров командной строки Unicode, используйте main
. Если вам нужны параметры командной строки Unicode, то вам нужны директивы препроцессора, которые позволят использовать сигнатуру, подходящую для каждой среды.
Если вы создаете кроссплатформенное приложение с графическим интерфейсом, используйте специальный фреймворк, такой как QT.