Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Gdy procedury we/wy strumienia Unicode (takie jak fwprintf, , fwscanf, fgetwcfputwc, fgetwslub fputws) działają na pliku otwartym w trybie tekstowym (ustawienie domyślne), mają miejsce dwie konwersje znaków:
Konwersja unicode-to-MBCS lub MBCS-to-Unicode. Gdy funkcja We/Wy Unicode działa w trybie tekstowym, przyjmuje się, że strumień źródłowy lub docelowy jest sekwencją znaków wielobajtowych. W związku z tym funkcje przesyłania strumieniowego Unicode konwertują znaki wielobajtowe na znaki szerokie (tak jak wywołanie
mbtowcfunkcji). Z tego samego powodu funkcje przesyłania strumieniowego Unicode konwertują znaki szerokie na znaki wielobajtowe (tak jak w przypadku wywołaniawctombfunkcji).Translacja karetki powrotnej linii (CR-LF). To tłumaczenie odbywa się przed konwersją MBCS — Unicode (dla funkcji wejściowych strumienia Unicode) i po konwersji Unicode — MBCS (dla funkcji wyjściowych strumienia Unicode). Podczas wprowadzania każda kombinacja zestawienia powrotnego karetki jest tłumaczona na pojedynczy znak kanału informacyjnego. Podczas danych wyjściowych każdy znak kanału informacyjnego wiersza jest tłumaczony na kombinację zestawienia powrotnego karetki.
Jednak gdy funkcja strumienia-we/wy Unicode działa w trybie binarnym, przyjmuje się, że plik jest unicode, a podczas wprowadzania lub wyjścia nie występuje translacja CR-LF ani konwersja znaków. Użyj instrukcji _setmode( _fileno( stdin ), _O_BINARY ); w celu poprawnego użycia wcin w pliku tekstowym UNICODE.
Zobacz też
Procedury czasu wykonywania języka Universal C według kategorii
Dane wejściowe i wyjściowe