C言語の構文をVBに変更したい


オーディ  2009-07-03 23:44:16  No: 142162

こんにちは。
C言語で掲載されているアルゴリズムを、VB(2005)に変換したいのですが、
以下の部分がよく分かりません。

int n;
char *p;
p = (char *) malloc( ( n * n / 4 ) * sizeof( char ) );

最後の行の"p = ..."の部分なのですが、メモリ領域を確保しているらしい
ということまではわかったのですが、最終的にpには何が代入されるのかが
分かりません。
どなたか、解説をお願いできませんでしょうか?
よろしくお願いします。


Hongliang  2009-07-04 00:02:28  No: 142163

使える関数がまるで異なる VB にそのまま変換するのは面倒そうですが。というか C 言語読めなければ正直どうしようもないんじゃ?

malloc は引数に確保するバイト数を与えます。ですから char が n * n / 4 個入るだけのメモリを確保することになります。
sizeof(char) は環境に依存しますが一般的には 1。
で確保した領域の先頭アドレスを指すポインタが返るわけですが。
VB なら Byte() で指定バイトを確保するのが一般的ですかね。確保した領域の使い方次第ですけど。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加