08/04/22 03:28:01
dllの中身が
void hoge(char *str){
printf("%s",str);
}
のとき
[DllImport("hoge.dll")]
static extern void hoge(string str);
とすると
hoge("hoge");
で呼び出せて
[DllImport("hoge.dll")]
static extern void hoge(char[] str);
とすると
hoge("hoge".ToCharArray());
で呼び出せるみたいなんだけど、これってコンパイラがstringをchar[]に勝手に変えてくれてるの?
仕組みとか注意点とかあれば教えていただきたい。