G
Guest
Код:
char sss[2]="01";
//--------------------
char* F1()
{
char s[3];
switch(sss[0])
{
case '0': s[0]='Z'; break;
case '1': s[0]='W';
}
switch(sss[1])
{
case '0': s[1]='X'; break;
case '1': s[1]='Y';
}
s[2]='\0';
//ShowMessage(s);
return s;
}
//--------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
char s[5]={0};
strcpy(s,F1());
ShowMessage(AnsiString(s));
}
При запуске данного кода выдаёт .@ а должен выдавать ZY
Но если в F1() раскомментировать ShowMessage(s), то будет выдавать правильный результат
Где происходит искажение результата? В функции strcpy(s,F1()) ???