NSStringsよりもC文字列を好むOpenGLシェーダーを使用していますが、次のような奇妙なことに遭遇しました。
関連する事実は
1)shaderSourceは次のように定義されます
NSString* shaderSource
2)glShaderSourceの署名は
glShaderSource(GLuint shader, GLuint count, const GLchar** string, const GLint *length)
これは機能します:
int len = [shaderSource length];
const char *cstr = [shaderSource UTF8String];
glShaderSource(shader, 1, &cstr, &len);
これは動作しません:
glShaderSource(shader, 1, &[shaderSource UTF8String], &[shaderSource length]);
私はここでObjectiveCについて何かを明らかに理解していません、そして私はその問題を修正したいと思います、それであなたがそんなに傾いているなら、祈ってください、WTF?