Vědět víc - vzdělávací portál pro zvídavé


Převod číslo <-> řetězec

Slide

Ukázali jsme si, jak jsou znaky kódovány na čísla. Často však potřebujeme vyjádřit číslo řetězcem nebo použít řetězec jako číslo.  

Znaky jsou v počítači uloženy jako čísla a čísla jsou dále v paměti počítače uložena ve dvojkové soustavě. To nám dává poměrně dost možností a kombinací toho, co si můžeme dovolit. 

Následující funkce můžeme použít pro převod čísla na řetězec: 

  • STR$ - převede číslo na řetězec v desítkové soustavě 
  • HEX$ - převede číslo na řetězec v šestnáctkové soustavě 
  • OCT$ - převede číslo na řetězec v osmičkové soustavě 

Pro převod řetězce na číslo můžeme použít funkci: 

  • VAL – funkce se pokusí převést řetězec na číslo; řetězec musí začínat číslem; funkce pracuje tak, že zpracuje všechny číslice od začátku řetězce dokud nenarazí na znak, který není číslice nebo řetězec neskončí. Pokud řetězec začíná nečíselným znakem, vrací funkce hodnotu nula. 

Tyto převody jsou z pohledu člověka poměrně logické. Můžeme však využít i způsob, jakým počítač data ukládá. 

K tomu slouží dvě sady funkcí: 

  • MKI$, MKL$, MKS$, MKD$, _MK$ - funkce převádějí uložená data na číslo. Koncový znak funkce určuje, jakým způsobem se uložená data zpracují (I-Integer, L-Long, S-Single, D-Double) 
  • CVI, CVL, CVS, CVD, _CV – funkce převádějí řetězec na číslo; každý znak řetězce reprezentuje jeden byte