CharInSet - C++ Builder

C++ Builder 参考手册 ➙ System::Sysutils ➙ CharInSet


一个字符是否在一个 char 类型的字符集合里面

头文件:#include
命名空间:System::Sysutils
函数原型:

bool __fastcall CharInSet(char C, const TSysCharSet &CharSet);
bool __fastcall CharInSet(System::WideChar C, const TSysCharSet &CharSet);

参数:

  • C:需要判断的字符;
  • CharSet:char 类型的字符集合;

返回值:

  • 一个字符是否在一个 char 类型的字符集合里面;
    尽管 C 可以是 WideChar 类型,参数 CharSet 就是 char 类型的集合,所以不支持 UNICODE 字符集,也不支持 ANSI 编码的 2 个 char 组成的字符 (例如汉字);
  • 如果自己写程序,不如 AnsiStrScan 从一个字符串里面找一个字符方便。

例子:这个例子演示了使用 CharInSet 判断一个字符是否在一个字符集合里面,和一个字符是否在一个字符串里面;

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    Sysutils::TSysCharSet cs = Sysutils::TSysCharSet()<<'a'<<'e'<<'i'<<'o'<<'u';
    Memo1->Lines->Add(BoolToStr(Sysutils::CharInSet('a',cs),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::CharInSet('b',cs),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::CharInSet('c',cs),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::CharInSet('d',cs),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::CharInSet('e',cs),true));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
    wchar_t cs[] = L"aeiou";
    Memo1->Lines->Add(BoolToStr(Sysutils::AnsiStrScan(cs, L'a'),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::AnsiStrScan(cs, L'b'),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::AnsiStrScan(cs, L'c'),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::AnsiStrScan(cs, L'd'),true));
    Memo1->Lines->Add(BoolToStr(Sysutils::AnsiStrScan(cs, L'e'),true));
}

运行结果:点击 Button1 和 Button2 的运行结果是相同的:

运行结果

相关:

  • System::Sysutils::StrScan
  • System::Sysutils::StrRScan
  • System::Sysutils::AnsiStrScan
  • System::Sysutils::AnsiStrRScan
  • System::Sysutils::StrPos
  • System::Sysutils::AnsiPos
  • System::Sysutils::AnsiStrPos
  • System::Sysutils::AnsiStrPos
  • System::Sysutils::TextPos
  • System::Sysutils
  • System::Character::TCharacter
  • System::Character::GetUnicodeCategory
  • System::Character
  • std::strstr, std::_fstrstr, std::_tcsstr, std::wcsstr
  • std::strchr, std::_fstrchr, std::_tcschr, std::wcschr
  • std::strrchr, std::_fstrrchr, std::_tcsrchr, std::wcsrchr
  • std::_strspnp, std::_tcsspnp, std::_wcsspnp
  • std::strcspn, std::_fstrcspn, std::_tcscspn, std::wcscspn
  • std::strtok, std::_fstrtok, std::_tcstok, std::wcstok

C++ Builder 参考手册 ➙ System::Sysutils ➙ CharInSet

你可能感兴趣的:(CharInSet - C++ Builder)