[問題] 指標陣列取值遇到的問題
小弟我目前再對opengl的function做修改(不過問題跟OPENGL沒啥關係)
假設我有一個function:
void glVertexPointer( GLint size,
GLenum type,
GLsizei stride,
const GLvoid * pointer)
size代表傳入的每個頂點記載多少筆資料(2~4 不重要)
type代表這個傳入的陣列是甚麼型態的陣列(short, int, float...etc)
stride代表記憶體的offset(我知道這邊怎麼做~假設傳入連續陣列~offset為0)
*pointer代表陣列起始位置~type其實就是void*
而我的問題是我要拿出這個陣列所有的值並DUMP出來
可是我只有pointer這個起始指標~沒有他陣列長度的資訊~所以我並不知道到要拿幾個
才停下來~而且我又沒辦法去改變她function的傳入資料
ex:float face[]={ //記載了一個面的頂點座標
-0.5f, -0.5f, 0.5f, //而我想將裡面12個值都DUMP出來
0.5f, -0.5f, 0.5f, //12個只是例子~個數是隨便定的= =
-0.5f, 0.5f, 0.5f,
0.5f, 0.5f, 0.5f,
}
glVertexPointer(3,float,0,face)
{
do what ever it does
dump(face,float);
}
在dump那裏~我無法去判斷說她陣列裡到底有幾個數值
所以我目前能想到的方法就是一次dump出很多的值~後面哩哩摳摳不在範圍內的也寫出來
請問各位有甚麼更好的方法嗎??
謝謝囉
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.171.53.182
推
06/20 17:46, , 1F
06/20 17:46, 1F
→
06/20 17:47, , 2F
06/20 17:47, 2F
→
06/20 17:47, , 3F
06/20 17:47, 3F
→
06/20 17:48, , 4F
06/20 17:48, 4F
推
06/20 17:51, , 5F
06/20 17:51, 5F
→
06/20 17:52, , 6F
06/20 17:52, 6F
→
06/20 17:53, , 7F
06/20 17:53, 7F
→
06/20 17:53, , 8F
06/20 17:53, 8F
→
06/20 17:54, , 9F
06/20 17:54, 9F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章