LINUX.ORG.RU

История изменений

Исправление Gyros, (текущая версия) :

Активно над этим сижу.

С помощью ф-ций mbstowcs, mbsrtowcs не удалось. Литералы пожалуйста, но если этими ф-циями , то иероглифы и проч.

Я др. идею хочу попробовать. Читать символы и если два байта соотв. русскому символу, то взять его из таблицы. Тогда можно большой switch для русских букв применить.

case {0xd0,0xae} : return L'Ю'; // это псевдокод

Для англ. и др. символов просто копируется один в один.

Т.е. это получается поиск в большой строке 2-байтовых подстрок. Задача поиска подстроки?

Думаю как бы строку читать как массив символов (2-хбайтовых). В этом загвоздка.

Ведь нужно всего то обычные наши ANSI-шные англ + символы умещающиеся в char. Плюс наши русские буквы, 2-xбайтовые.

Народ прям про какие-то иероглифы, араб. вязь пишет.. Для всего что не попадает в то, что вышеописано - return L'*';.

Как-то над этим сейчас думаю.

Исправление Gyros, :

Активно над этим сижу.

С помощью ф-ций mbstowcs, mbsrtowcs не удалось. Литералы пожалуйста, но если этими ф-циями , то иероглифы и проч.

Я др. идею хочу попробовать. Читать символы и если два байта соотв. русскому символу, то взять его из таблицы. Тогда можно большой switch для русских букв применить.

case {0xd0,0xae} : return L'Ю'; // это псевдокод

Для англ. и др. символов просто копируется один в один.

Т.е. это получается поиск в большой строке 2-байтовых подстрок. Задача поиска подстроки?

Думаю как бы строку читать как массив символов (2-хбайтовых). В этом загвоздка.

Ведь нужно всего то обычные наши ANSI-шные англ + символы умещающиеся в char. Плюс наши русские буквы, 2-xбайтовые.

Народ прям про какие-то иероглифы пишет.. Для всего что не попадает в то, что вышеописано - return L'*';.

Как-то над этим сейчас думаю.

Исходная версия Gyros, :

Активно над этим сижу.

С помощью ф-ций mbstowcs, mbsrtowcs не удалось. Литералы пожалуйста, но если этими ф-циями , то иероглифы и проч.

Я др. идею хочу попробовать. Читать символы и если два байта соотв. русскому символу, то взять его из таблицы. Тогда можно большой switch для русских букв применить.

case {0xd0,0xae} : return L'Ю'; // это псевдокод

Для англ. и др. символов просто копируется один в один.

Думаю как бы строку читать как массив символов (2-хбайтовых). В этом загвоздка.

Ведь нужно всего то обычные наши ANSI-шные англ + символы умещающиеся в char. Плюс наши русские буквы, 2-xбайтовые.

Народ прям про какие-то иероглифы пишет.. Для всего что не попадает в то, что вышеописано - return L'*';.

Как-то над этим сейчас думаю.