델파이에서 if .. in... 문 있잖아요...
아래와 같이 썼는데 계속 에러가 나네요... 어떻게 된건지 좀 알려주세요!!!
sData : string;
iTime : integer;
iSpce : array[1..20] of integer;
iJALI : array[1..20] of integer;
변수는 위와 같고요.. 파일을 읽어가며 판단을 하는것입니다.
if (Trim(Copy(sData,iJALI[06],iSpce[07])) IN ['Mon','Tue','Wed','Thu','Fri']) and
(iTime >= 1200) and (iTime <= 1380) then
iSA[1] := iSA[1] + StrToInt(Trim(Copy(sData,iJALI[16],iSpce[17])));
위와같이 쓰면
Ordinal type required 라는 에러메세지가 납니다.
제발좀 알려주세요...
if ..in.. 에서 in에는 스트링을 사용하실 수 없습니다.
즉, 한바이트 단위만 사용하 실 수 있네요.
Case 에서와 같다고 보시면 됩니다.
Ordinal (서수형) 이기 때문입니다.
그럼~ 즐거운 프로그래밍 하시길~~~
델초보 wrote:
> 델파이에서 if .. in... 문 있잖아요...
> 아래와 같이 썼는데 계속 에러가 나네요... 어떻게 된건지 좀 알려주세요!!!
>
> sData : string;
> iTime : integer;
> iSpce : array[1..20] of integer;
> iJALI : array[1..20] of integer;
> 변수는 위와 같고요.. 파일을 읽어가며 판단을 하는것입니다.
>
> if (Trim(Copy(sData,iJALI[06],iSpce[07])) IN ['Mon','Tue','Wed','Thu','Fri']) and
> (iTime >= 1200) and (iTime <= 1380) then
> iSA[1] := iSA[1] + StrToInt(Trim(Copy(sData,iJALI[16],iSpce[17])));
> 위와같이 쓰면
> Ordinal type required 라는 에러메세지가 납니다.
> 제발좀 알려주세요...