Форум программистов, компьютерный форум CyberForum.ru

Обработка .txt кодировка ANSI и UTF-8 (буква "я" в ANSI воспринимается как EOF) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Непонятный вывод http://www.cyberforum.ru/cpp-beginners/thread330388.html
У меня есть следующий код функции на С++ void CursorPosition(HWND hWnd, int xPosition, int yPosition, int xCell, int yCell, int sx, int sy) { int oneStepOnX = sx/8; int oneStepOnY = sy/8; TCHAR sumbolsChar = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H' }; TCHAR sumbolsInt = { '1', '2', '3', '4', '5', '6', '7', '8' }; TCHAR intPos; TCHAR charPos;
C++ Преобразования типов Почему можно присваивать символьной переменной типа char целые числа? И наоборот, целочисленному типу int можно присваивать символы. Происходит ли преобразование типа или это обычное явление когда в целый тип помещаются символы? char ch = 34; int i = 'c'; http://www.cyberforum.ru/cpp-beginners/thread330385.html
__cdecl and __stdcall C++
Доброго времени суток! При соглашении вызова __cdecl стек очищает вызывающая функция, при __stdcall - вызываемая. В чем это проявляется и что это означает? Ну то есть я понимаю, что стек надо очищать, но в чем будет разница при использовании этих соглашений? Это влияет только на ассемблерный код, который генерит компилятор? В каких случаях что лучше использовать?
C++ Преобразуйте программу на язык С++
Кто может сделать перевод на С Pascala на С++ эту программу program MaxElem; uses Crt; type Mas = array of Real; var A: Mas; i, N: Integer; k: Integer; Amax: Real; begin СlrScr;
C++ Конструктор шаблона класса http://www.cyberforum.ru/cpp-beginners/thread330310.html
Добрый день. Столкнулся с проблемой: имеется код template <class L> class smthing { private: ..... public: smthing(); ..... };
C++ Работа с doc файлами Всем привет. Нужна помощь по работе с doc файлами. Буду признателен за ссылки, советы и.т.д. Интересует пример: В doc файле есть текст и допольнительно . Надо что-бы программа заменяла на значение из программы. подробнее

Показать сообщение отдельно
grizlik78
Эксперт С++
1908 / 1440 / 110
Регистрация: 29.05.2011
Сообщений: 2,995
07.07.2011, 01:31     Обработка .txt кодировка ANSI и UTF-8 (буква "я" в ANSI воспринимается как EOF)
Во-первых, char по-умолчанию почти везде знаковый. Мало где можно встретить беззнаковый char по-умолчанию.
Во-вторых, если бы можно было бы сохранить всю информацию в char, то getc() и возвращала бы char. И знаковость здесь роли не играет.
В коде:
C
1
2
char ch;
while ((ch = getc(fp)) != EOF)
потеря информации происходит как раз при присвоении значения переменной ch, так как для "законных" символов эта функция возвращает числа 0—255, а в случае конца файла, функция возвращает EOF, то есть -1. После присваивания нельзя отличить EOF от символа с кодом 255.
А вот здесь можно:
C
1
2
int ch;
while ((ch = getc(fp)) != EOF)
Добавлено через 2 минуты
Что-то я долго пишу и тоже не сразу понимаю некоторые фразы
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru