Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Používání akce
Specifické pro Microsoft
V programovacím modelu Unicode můžete definovat širokoznakovou verzi main funkce.
wmain Místo main toho, pokud chcete napsat přenosný kód, který dodržuje programovací model Unicode.
Podobně jako mainu funkce, která neplatí pro žádné jiné funkce jazyka wmain C, platí několik omezení. Funkce wmain :
- Nelze deklarovat jako
inline. - Nelze deklarovat jako
static. - Nemůže mít jeho adresu.
- Nelze volat z programu.
Podpis wmain funkce
Funkce wmain nemá deklaraci, protože je integrovaná do jazyka. Pokud ano, syntaxe deklarace by wmain vypadala takto:
int wmain( void );
int wmain( int argc, wchar_t *argv[ ] );
int wmain( int argc, wchar_t *argv[ ], wchar_t *envp[ ] );
Funkce wmain je deklarována implicitně pomocí jednoho z těchto podpisů. Při definování funkce wmain můžete použít kterýkoli z těchto podpisů. Následně je možné do aplikace předat argumenty širokých znaků a volitelně ukazatel prostředí širokých znaků. Kompilátor Microsoftu také umožňuje wmain návratový typ void , pokud není vrácena žádná hodnota. Parametry argv a envp parametry wmain lze také definovat jako typ wchar_t**. Další informace o argumentech naleznete v tématu Popis argumentu.
Prostředí envp
Pokud váš program používá main funkci, prostředí s vícebajtovými znaky je vytvořeno knihovnou runtime při spuštění programu. Kopie prostředí s širokým znakem se vytvoří pouze v případě potřeby (například voláním _wgetenv funkcí)._wputenv Existuje-li již prostředí MBCS, je při prvním volání _wputenv nebo při prvním volání _wgetenv vytvořeno odpovídající prostředí řetězce širokého znaku, na které je následně odkázáno pomocí globální proměnné _wenviron, což je verze širokého znaku globální proměnné _environ. V tomto okamžiku vedle sebe existují dvě kopie prostředí (znaková sada MBCS a Unicode), které jsou udržovány v operačním systému po celou dobu trvání aplikace.
Podobně platí, že pokud váš program používá wmain funkci, vytvoří se při spuštění programu široké znakové prostředí, na které _wenviron odkazuje globální proměnná. Prostředí MBCS (ASCII) se vytvoří při prvním volání _putenv nebo getenva odkazuje na globální proměnnou _environ .
Další informace o prostředí MBCS naleznete v tématu Internationalization.
END Specifikace Microsoftu