Q&A

  • '' 내의 변수 처리는 어떻게 하나요?
다음과 같이 프로그램을 작성하였답니다.



procedure TForm1.Change_ButtonClick(Sender: TObject);

var

FileName:String;

i:Integer;

begin

for i:= 0 to 2 do

begin

FileName := IntToStr(i);

WinExec('a.exe '+'FileName', SW_SHOW);

end;

end;



그런데 여기서 FileName에 해당하는 부분을 변수화해서

반복문 상에서 바꾸어 가면서 처리를 해야 하는데...

처음 FileName이 계속 유지가 되는지 결과가 예상과는 다르게

하나밖에 나오지 않더라구요.

실행은 반복횟수만큼 되는데 ''내의 FileName이 동일하게 적용이 되는지

같은 이름의 결과가 계속된답니다.

반복루프 내에서 변수가 바뀌는 것까지 확인을 했는데 왜 동일한 결과가

반복될까요?

어떻게 하면 해결할 수 있나요?



1  COMMENTS
  • Profile
    안치봉 1999.08.11 22:57
    변수인데 '' 로 둘러사시면 안되죠.... 그러면 그냥 문자열이 되버립니다.



    전에 하신건 결과가..



    a.exe FileName

    a.exe FileName

    a.exe FileName



    WinExec('a.exe '+ IntToStr(i), SW_SHOW);



    위와같이 하면 결과는



    a.exe 0

    a.exe 1

    a.exe 2





    황하성 께서 말씀하시기를...

    > 다음과 같이 프로그램을 작성하였답니다.

    >

    > procedure TForm1.Change_ButtonClick(Sender: TObject);

    > var

    > FileName:String;

    > i:Integer;

    > begin

    > for i:= 0 to 2 do

    > begin

    > FileName := IntToStr(i);

    > WinExec('a.exe '+'FileName', SW_SHOW);

    > end;

    > end;

    >

    > 그런데 여기서 FileName에 해당하는 부분을 변수화해서

    > 반복문 상에서 바꾸어 가면서 처리를 해야 하는데...

    > 처음 FileName이 계속 유지가 되는지 결과가 예상과는 다르게

    > 하나밖에 나오지 않더라구요.

    > 실행은 반복횟수만큼 되는데 ''내의 FileName이 동일하게 적용이 되는지

    > 같은 이름의 결과가 계속된답니다.

    > 반복루프 내에서 변수가 바뀌는 것까지 확인을 했는데 왜 동일한 결과가

    > 반복될까요?

    > 어떻게 하면 해결할 수 있나요?

    >