Q&A

  • 숫자와 문자가 포함되 문자를 구분 하는 법 좀 알켜 주세요
ex)12.장 입니다. 라는 문자열을 '12'라는 숫자형과

'장 입니다.'라는 문자형으로 구분하려 합니다.

그래서..



function oh(str1:string):string;

var

str2:array[1..3] of char;

i:integer;

p:pchar;



begin

p:=@str1[1];

i:=1;



while #0<>p^ do begin

str2[i]:=p^;

inc(i);

inc(p^);

end;

//str2:=str2+chr(#0);

result:=str2;

end;



procedure TForm1.Edit1Change(Sender: TObject);

begin

edit2.Text:=oh(edit1.text);

end;



end.

처리를 했더니만 에러가 나더 군요.. 좀 도와주세요...

왜그런지...

1  COMMENTS
  • Profile
    배상영 1999.10.29 01:18
    배상영 wrote:

    > ex)12.장 입니다. 라는 문자열을 '12'라는 숫자형과

    > '장 입니다.'라는 문자형으로 구분하려 합니다.

    > 그래서..

    >

    > function oh(str1:string):string;

    > var

    > str2:array[1..3] of char;

    > i:integer;

    > p:pchar;

    >

    > begin

    > p:=@str1[1];

    > i:=1;

    >

    > while #0<>p^ do begin

    > str2[i]:=p^;

    > inc(i);

    > inc(p^);

    > end;

    > //str2:=str2+chr(#0);

    > result:=str2;

    > end;

    >

    > procedure TForm1.Edit1Change(Sender: TObject);

    > begin

    > edit2.Text:=oh(edit1.text);

    > end;

    >

    > end.

    > 처리를 했더니만 에러가 나더 군요.. 좀 도와주세요...

    > 왜그런지...

    해결은 했는데..

    이것이 올바른 것인지 모르겠네요..

    전에 C를 했는데.. 델파이에는 스트링변수가 있더라구요

    그래서 편한줄로만 알았는데.. 꼭 그런것두 아니군요..

    저기 고수님들에게 부탁드립니다. 스트링 변수에 대해 자세히좀 갈켜 주세요..

    초기화가 필요한지두..



    function oh(str:string):string;

    var s:string;

    i:integer;

    begin

    i:=1;

    while str[i]<>'.' do begin

    s:=str;

    i:=i+1;

    end;

    s[i]:=#0;

    result:=s;

    end;



    감사..