Функция mbsinit () в C ++ определяет, описывает ли объект mbstate_t начальное состояние преобразования.
Функция mbsinit () определена в заголовочном файле.
прототип mbsinit ()
int mbsinit (const mbstate_t * ps);
Если ps не является нулевым указателем, функция mbsinit () проверяет, представляет ли ps начальное состояние преобразования.
Параметры mbsinit ()
- ps: указатель на объект mbstate_t для проверки.
mbsinit () Возвращаемое значение
Функция mbsinit () возвращает:
- 0, если ps не является нулевым указателем и не представляет начальное состояние преобразования.
- Ненулевое значение, если ps является нулевым указателем или представляет начальное состояние преобразования.
Пример: как работает функция mbsinit ()?
#include #include #include using namespace std; void test_ps(mbstate_t ps) ( if (mbsinit(&ps)) cout << "the conversion state is initial conversion state" << endl; else cout << "the conversion state is not initial conversion state" << endl; ) int main() ( setlocale(LC_ALL, "en_US.utf8"); char str() = "u00b5"; mbstate_t ps = mbstate_t(); cout << "Initially after creating ps, "; test_ps(ps); mbrlen(str, 1, &ps); cout << "After performing some task, "; test_ps(ps); return 0; )
Когда вы запустите программу, вывод будет:
Первоначально после создания ps состояние преобразования является начальным состоянием преобразования. После выполнения некоторой задачи состояние преобразования не является начальным состоянием преобразования.