如何在c ++中实现变音符号?

时间:2014-10-03 17:03:06

标签: c++ visual-c++ diacritics

我需要帮助从.txt文件获取单词,该文件也包含变音符号。 (所以有些单词包含了ěščř等。顺便提一句,如果有帮助的话,那就是捷克变音符号。) 我的函数获取我输入的单词,但它不会得到我在包含变音符号的控制台中输入的单词。 我想我必须在我的Microsoft Visual c + + +中设置一些内容,但我不确定在哪里和哪里。如果我错了,那就是功能。

bool find(char typedword[50])
{
  bool found = false;
  char * word = new char [50];
  fstream dictionary;
  dictionary.open("Dictionary.txt", ios::in);
  while (dictionary >> word)
  {
    if (strcmp(typedword, word) == 0)
    {
        found = true;
        break;
    }

  }
  dictionary.close();
  if (found == true)
      return true;
  else
      return false;
}

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

您需要区域设置支持,以便组合字符和复合等效项的序列相等。

可移植方式为setlocale并使用strcoll代替strcmp

Windows方式是使用CompareStringEx(自动使用操作系统区域设置)而不是strcmpNormalizeString也可能有所帮助。