포인터를 증가시키려는 중 오류가 발생합니다.고정 된 블록 안의 포인터를 증가시키지 않으면 작동하는 것 같습니다.
그것이 fixed
블록에서 선언
unsafe void organize_data()
{
fixed(byte* ptr = &database[0])
{
fixed(byte* ptruc = &dtbaseuc[0])
{
strcnt=1;
linestrts[0]=0;
for(int i=0;i<filelen;i++)
{
if(*ptr > 96 && *ptr < 123)*ptruc=(byte)((int)*ptr-(int)32);
if(*ptr ==13)
{
linestrts[strcnt]=i+1;
strcnt++;
}
ptr++;
ptruc++;
}
}
}
textBox2.Text=strcnt.ToString();
}
심각하게도 왜 '안전하지 않은'이유를 사용해야합니까? – leppie
& database [0]은 배열의 0 요소 주소입니다. 대신 & 데이터베이스를 사용하지 마십시오. –
@KamilKrasinski : 그럴 가치가 없습니다. 그는'데이터베이스'만을 사용해야합니다. – leppie