|
안녕하세요.strchr과 AnsiString에 대해 질문을 드리고자 합니다.
밑에 소스 예제가 있는데,
제가 알고 싶은 부분은
if(strchr(Table1->FieldByName("50")->AsString,'&')!=NULL)과
sprintf(str_read,"%s",Table1->FieldByName("50")->AsString);입니다.
컴파일을 하면 다음과 같이 에러가 발생합니다.
Could not find a match for 'strchr(AnsiString , char)
strchr의 사용법은 처음에 문자열의 번지가 오는 걸로 알고 있는데,
if(strchr(Table1->FieldByName("50")->AsString,'&')!=NULL)에서
Table1->FieldByName("50")->AsString가 잘못 된 것인지 알고 싶군요.
Table1->FieldByName("50")->AsString에 대한 번지는 어케 지정하죠?
갸령 (AnsiString *)(Table1->FieldByName("50")->AsString)와 같이 했더니
에러가 나더라구요.
그리고 구체적으로 AnsiString에 대한 사용법을 잘 모르겠더군요.
보통 클래스로 지정이 되있는 듯 한데........
아직 c++초보라서요.도와주십시요.^^
char *str_read;
char *str_write;
//int ch='&';
if(strchr(Table1->FieldByName("50")->AsString,'&')!=NULL)
{
sprintf(str_read,"%s",Table1->FieldByName("50")->AsString);
sprintf(str_write,"%s",*(str_read+2));
Edit5->Text=*str_write;
Label10->Caption="&H";
}
else
Edit5->Text=Table1->FieldByName("50")->AsString;
|