Ц ++ вцскфрм () - Ц ++ стандардна библиотека

Функција вцскфрм () у Ц ++ трансформише задати нулто завршени широки низ у облик дефинисан имплементацијом.

Функција вцскфрм () трансформише широки низ тако да упоређивање два трансформисана широка низа помоћу функције вцсцмп () даје идентичан резултат као упоређивање оригиналних широких низова помоћу функције вцсцолл () у тренутном Ц локалитету.

На пример, к и и су две широке жице. а и б су две широке жице формиране трансформацијом к и и, односно помоћу функције вцскфрм.

Онда,

 вцсцмп (а, б) = вцсцолл (к, и)

Дефинисано је у заглављу датотеке.

прототип вцскфрм ()

 сизе_т вцскфрм (вцхар_т * дест, цонст вцхар_т * срц, цоунт_т цоунт);

Функција вцскфрм () претвара прве бројеве широког знака широког низа на који указује срц у облик дефинисан имплементацијом, а резултат се чува на меморијској локацији на коју указује дест.

Понашање ове функције није дефинисано ако:

  • величина дестинације је мања од потребне величине.
  • дест и срц се преклапају.

вцскфрм () Параметри

  • дест: показивач на низ у коме се налази трансформисани широки низ.
  • срц: показивач на нулто завршени широки низ који треба трансформисати.
  • цоунт: максималан број широких знакова за конверзију.

вцскфрм () Повратна вредност

Функција вцскфрм () враћа број трансформисаних широких знакова, изузимајући завршавајући нулл широк знак Л ' 0'.

Пример: Како функционише функција вцскфрм ()?

 #include #include #include using namespace std; int main() ( setlocale(LC_COLLATE, "cs_CZ.UTF-8"); const wchar_t* s1 = L"u0068u0072u006eu0065u0063"; const wchar_t* s2 = L"u0063u0068u0072u0074"; wchar_t t1(20), t2(20); cout << "wcscoll returned " << wcscoll(s1,s2) << endl; cout << "Before transformation, " << "wcscmp returned " << wcscmp(s1,s2) << endl; wcsxfrm(t1,s1,10); wcsxfrm(t2,s2,10); cout << "After transformation, " << "wcscmp returned " << wcscmp(t1,t2) << endl; return 0; )

Када покренете програм, излаз ће бити:

 вцсцолл вратио -1 Пре трансформације, вцсцмп је вратио 1 Након трансформације, вцсцмп је вратио -1

Занимљиви Чланци...