Перш за все: у вашому заголовку використовується / d ANSI, тоді як у тексті ви посилаєтесь на ASCII. Зверніть увагу, що ANSI не дорівнює ASCII. ANSI включає в себе набір ASCII. Але набір ASCII обмежений першими 128 числовими значеннями (0 - 127).
Якщо всі ваші дані обмежені ASCII (7-бітними), не має значення, чи використовуєте ви UTF-8, ANSI або ASCII, оскільки і ANSI, і UTF-8 містять повний набір ASCII. Іншими словами: числові значення від 0 до 127 включають абсолютно однакові символи в ASCII, ANSI та UTF-8.
Якщо вам потрібні символи поза набором ASCII, вам потрібно вибрати кодування. Ви можете використовувати ANSI, але тоді ви стикаєтеся з проблемами всіх різних сторінок коду. Створіть файл на машині A і прочитайте його на машині B, можливо, / буде створювати кумедні тексти, якщо ці машини створені для використання різних сторінок коду, просто, оскільки числове значення nnn являє собою символи різниці на цих кодових сторінках.
Цей "код кодової сторінки" є причиною визначення стандарту Unicode . UTF-8 - це лише одне кодування цього стандарту, їх набагато більше. UTF-16 є найбільш розповсюдженим, оскільки це кодування для Windows.
Отже, якщо вам потрібно підтримати що-небудь понад 128 символів набору ASCII, моя порада - перейти з UTF-8 . Таким чином це не має значення, і вам не потрібно турбуватися про те, на яку кодову сторінку ваші користувачі налаштували свої системи.