C++ iOS getcwd替代方案

C++ iOS getcwd替代方案,c++,ios,xcode,getcwd,C++,Ios,Xcode,Getcwd,我正在移植我的C++ OpenGL应用程序到iOS,它使用GETCWD函数来加载着色器。在iOS中,“getcwd”只返回一个斜杠,我无法执行某些操作。或者有什么好方法可以在iOS上加载文件 编辑:找到了解决方案!基于POSIX的代码 static char homePath[256]; char *DocumentsFolder(void) { char *p; if (*homePath) return homePath; if ((p = getenv("HOME")) !=

我正在移植我的C++ OpenGL应用程序到iOS,它使用GETCWD函数来加载着色器。在iOS中,“getcwd”只返回一个斜杠,我无法执行某些操作。或者有什么好方法可以在iOS上加载文件

编辑:找到了解决方案!基于POSIX的代码

static char homePath[256];
char *DocumentsFolder(void)
{

char *p;

if (*homePath)
    return homePath;

if ((p = getenv("HOME")) != NULL) {
    strncpy(homePath, p, sizeof(homePath));

    strcat(homePath, "/Documents" );
    if (mkdir(homePath, 0777)) {
        if (errno != EEXIST)
            printf( "CAN NOT CREATE DIRECTORY\n" );
    }
    return homePath;
}
return ""; 
}

如果可以使用Objective-C,请参阅NSFileManager。它有一个获取当前工作目录的方法。着色器文件在哪里?我已经将它们放在xcode项目/Data/shaders/shaderfile中。@MarcB你在开玩笑吗?老实说,您需要了解沙箱、捆绑包和众所周知的文件夹。事实上,有文件,当然也有文件系统。我通过将文件放到/Documents/并在顶部使用代码来解决这个问题。