0

Objective-C で GLfloat 配列を動的に宣言する際に問題が発生しています。私が使用しているコードは次のとおりです。

GLfloat *m_bindPositions;

@implementation

int nVerts           = [self m_countVertices];
m_bindPositions      = (GLfloat*)malloc((nVerts * 3) * sizeof(GLfloat));

この例の nVerts は 6704 です。

sizeof(m_bindPositions) を実行すると、80448 が返されるはずです。

現在は 4 を返します。これは、

記憶にあり、その理由は完全にはわかりません。どんな助けでも大歓迎です。

Thanks
4

1 に答える 1

3

sizeofこの場合、ポインターが指すデータではなく、ポインターのサイズを返します。

ただし、コンパイラは sizeof を処理するものであり、malloc に基づいて動的に値を返すことはありませsizeofmalloc_size()。割り当てブロックサイズを表します。

于 2013-03-24T17:48:02.220 に答える