Ez miért van? (pascal)
Az alábbi problémám jelentkezett Pascal sortörésnél: [link]
Hogy lehet eltüntetni azt a karaktert?
de, ki kell venni, a sortörés pedig a
carriage return & line feed vezérlőkarakter combo, ami ez
#13,#10
egyébként a sortörést WRITELN() eljárással teheted meg :O:O
be van építve a SYSTEM UNIT-ba
Azt ugye tudod, hogy alapban a karakteres képernyő 25 sorból és 80 oszlopból áll. Ami annyit tesz, hogy ha a kiírni kívánt szöveg hosszabb mint 80 karakter, akkor az e fölé eső rész új sorba kerül. Tehát, kiírás előtt szépen beteszed egy string típusú változóba, amit ki akarsz írni a képernyőre, a length függvénnyel lekéred a hosszát. Ha hosszabb mint 80 karakter, akkor fogod magad, és szépen megkeresed ebben a stringben az utolsó szóköz karaktert, ettől a karaktertől kezdve a string végéig átmásolod a tartalmat egy másik stringbe (copy függvény), majd az első string végéről törlöd a felesleget (delete eljárás). Ezután szépen kiírod a képernyőre a két stringedet megfelelő sorrendben és itt már bátran használhatod a writeln eljárást, nem kell sortörés karakter bele.
A sortörés karaktere pedig Windowson, ahogy az előttem szólók is írták a #13#10 nem pedig az általad beírt #2.
ha esetleg nem érted, amit leírtak:
mivel nekünk már konkrét problémával álltál elő amiben kiírattad a szavakat, tedd ezt egy változóba, legyen a neve
STRING
a program pedig használja a "strutils" unitot
WRITELN(copy(STRING,1,Length(STRING)-Pos(#32,ReverseString(STRING))));
WRITELN(copy(STRING,1+Length(STRING)-Pos(#32,ReverseString(STRING),Pos(#32,ReverseString(STRING)-1));
de remélem hogy fölöslegesen írtam, mert meg tudod oldani hogy már a kikeresésnél letöröd a szavakat és nincs külön stringed
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!