Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Att använda
Microsoft-specifik
I Unicode-programmeringsmodellen kan du definiera en bred karaktärsversion av main funktionen. Använd wmain i stället för main om du vill skriva portabel kod som följer Unicode-programmeringsmodellen.
Som maingäller flera begränsningar för funktionen wmain som inte gäller för andra C-funktioner. Funktionen wmain :
- Det går inte att deklarera som
inline. - Det går inte att deklarera som
static. - Det går inte att ta adressen.
- Det går inte att anropa från programmet.
Funktionssignaturen wmain
Funktionen wmain har ingen deklaration eftersom den är inbyggd i språket. Om det gjorde det skulle deklarationssyntaxen för wmain se ut så här:
int wmain( void );
int wmain( int argc, wchar_t *argv[ ] );
int wmain( int argc, wchar_t *argv[ ], wchar_t *envp[ ] );
Funktionen wmain deklareras implicit med hjälp av en av dessa signaturer. Du kan använda någon av dessa signaturer när du definierar din wmain funktion. Du kan sedan skicka argument med breda tecken och, om du vill, en miljöpekare med breda tecken till programmet. Microsoft-kompilatorn tillåter wmain också att ha en returtyp för void när inget värde returneras. Parametrarna argv och envp som wmain ska definieras kan också definieras som typ wchar_t**. Mer information om argumenten finns i Argumentbeskrivning.
Miljön envp
Om programmet använder en main funktion skapas miljön med flerabytestecken av körningsbiblioteket vid programstart. En bred teckenkopia av miljön kopieras bara när det behövs (till exempel genom ett anrop till funktionerna _wgetenv eller _wputenv). Vid det första anropet till _wputenv, eller vid det första anropet till _wgetenv om en MBCS-miljö redan finns, skapas en motsvarande strängmiljö med breda tecken och pekas sedan på av den _wenviron globala variabeln, som är en bred teckenversion av den _environ globala variabeln. Nu finns två kopior av miljön (MBCS och Unicode) samtidigt och underhålls av operativsystemet under hela programmets livslängd.
Om programmet använder en wmain funktion skapas på samma sätt en miljö med bred karaktär vid programstart och pekas på av den _wenviron globala variabeln. En MBCS-miljö (ASCII) skapas vid det första anropet till _putenv eller getenvoch pekas på av den _environ globala variabeln.
Mer information om MBCS-miljön finns i Internationalisering.
Avsluta Microsoft Specifik