処理内容は記載していませんが、
関数 malloc、memset、memcpyについての書き換えにて
下記のような内容でよいかご教授願います。
// C言語
int tar_len;
int st_pos;
char* str_tar;
char* data;
data = malloc(tar_len - st_pos + 1);
memset(data,0x00,tar_len - st_pos + 1);
memcpy(data,&str_tar[st_pos],tar_len - st_pos);
// C#に書き換え
int tar_len,
int st_pos;
string str_tar,
char data;
byte[] data = new byte[tar_len - st_pos + 1];
for(int i = 0;i < tar_len - st_pos + 1;i++)
{
data[i] = 0x00;
}
for(int i = 0;i < tar_len - st_pos;i++)
{
data[i] = str_tar[st_pos + i];
}