14歳の自分に衝撃の事実を告げてください

Cで
int test(char* moji) {
  moji = "test";
  return 0;
}
のようなdllを作り、C#側から
  test(ref cs_moji);
としても変数cs_mojiに"test"という文字列は帰ってきませんでした。
数時間調べたりしてcs_mojiの型をstringやStringBuilder等としたのですが、どれもうまくいきませんでした。
ポインタのポインタを利用したときは文字列は帰ってきたものの文字化けがたくさんしていて理想とはかけ離れていました。
どのようにしたらCのdllからC#に文字列を送ることができるでしょうか。
初歩的な質問かもしれないですがよろしくお願いいたします。

A 回答 (1件)

マネージドコードとアンマネージドコード間でのデータのやりとりになるので初歩的ではないです。



ひとまずこの辺は読んでおくべきかと思います。
http://msdn.microsoft.com/ja-jp/library/26thfadc …
http://msdn.microsoft.com/ja-jp/library/e8w969hb …
    • good
    • 0
この回答へのお礼

ありがとうございます。

教えていただいたやり方で実装することができました。

お礼日時:2013/05/17 18:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報