Podemos usar wmain () funções com compiladores Unix ou ele vai trabalhar apenas no Windows?
-
19-09-2019 - |
Pergunta
podemos usar funções wmain () com compiladores Unix ou ele vai trabalhar apenas em \ para janelas?
Solução
As assinaturas único padrão para main
são:
int main(void);
int main(int argc, char *argv[]);
No entanto, uma implementação independente pode fornecer extensões / permitir que outras assinaturas. Mas essas não são guranteed para ser portátil. olhares wmain
como uma coisa Windows / VS. Não há muita chance isso vai funcionar em um * nix / GNU GCC.
Outras dicas
A assinatura wmain
existe no Windows para argumentos de linha de comando alça de caracteres largos. Geralmente, enquanto as aplicações do Windows preferem UTF16, aplicações Unix preferem UTF8 para Unicode seqüência de codificação. UTF8 usa cadeias de caracteres char
regulares, de modo que os sufixos de assinatura main
padrão para appications Unicode-aware Unix.
Se você quiser fazer uma aplicação de consola portátil que não requer Unicode parâmetros de linha de comando, use main
. Se você fizer parâmetros de linha de comando necessidade Unicode, então você precisa de pré-processamento directivas que permitirão a assinatura apropriada para cada ambiente.
Se você está fazendo uma aplicação gráfica multi-plataforma, use um quadro especial, como QT.
wmain () é específico do windows. Assim como _tmain, se o que importa ...