Práce s řetězci

Typy string, char a PChar mohou občas způsobit potíže. Zde je připraveno pět typových příkladů. Po jejich zdolání již pro vás nebude práce s textem žádný problém.

Vaše úkoly jsou:

Typem PChar a prací s ním se Pascal blíží jazyku C.

Nápověda k použití typu PChar: Jedná se o ukazatel na Char. Je-li s proměnná typu PChar, a chceme-li do ní přiřadit řetězec o maximální délce maximalniDelka, musíme nejprve získat paměť pomocí GetMem(s,maximalniDelka); Teprve pak můžeme s proměnnou s pracovat. Po skončení práce uvolníme paměť pomocí FreeMem(s,maximalniDelka); (Jelikož maximální délka se může lišit od délky skutečné, je zapotřebí si pamatovat, kolik paměti jsme vyhradili.)

V rozšířené syntaxi s[0] znamená první znak Pcharu P, s[1] druhý znak Pcharu s atd.
Je také možné psát výrazy typu s+1, s+12, které znamenají: ukazatel na druhý znak Pcharu, ukazatel na třináctý znak Pcharu s.
Stejně tak lze od Pcharu odčítat. Je definován i rozdíl dvou ukazatelů, který znamená počet prvků(znaků) mezi nimi.

Vzorové řešení(.pas 15kB)