float squareVertexData[999999] = { };
我想在ios里开辟一个float数组,(不能使用NSArray,用到的OpenGL库不识别)。怎么能开辟到最大,如果我把数开到九十九万,viewdidload就直接崩了
还有就是我能不能顶一个返回值为float数组的方法,并将此数组返回,试了下没成功,求个基本语法,试了很多没成功。
float squareVertexData[999999] = { };
我想在ios里开辟一个float数组,(不能使用NSArray,用到的OpenGL库不识别)。怎么能开辟到最大,如果我把数开到九十九万,viewdidload就直接崩了
还有就是我能不能顶一个返回值为float数组的方法,并将此数组返回,试了下没成功,求个基本语法,试了很多没成功。
float squareVertexData[999999] = { };
C 不允许这种写法吧。好歹分配个值 float squareVertexData[999999] = {1.0};
10 回答11.2k 阅读
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
一看是OpenGL就知道是你...
你这样声明的静态数组,在内存空间里是连续的,如果内存中没有这么长的连续内存,就拉倒了。所以要使用动态数组
祝你好运。
PS: 你虽然开了一个999999的数组,但其实并不一定要用完对吧,静态数组的话,那个999999是要在代码里写死的;换了动态以后,数组长度n,你可以根据你的实际需要来分配,还可以在不够用时候扩容。其实这是个C语言问题。