在Mac OS X上,格式塔的功能是什么?它是干什么用的?你能举个简单的例子吗?我知道它与系统调用有关,但具体到底是什么?
答案 0 :(得分:8)
Gestalt为您提供有关运行应用程序的系统的详细信息,例如操作系统版本。下面是一个简单的示例,可以在运行此二进制文件的系统上获取Mac OSX版本:
#include <stdio.h>
#include <Gestalt.h>
int main() {
SInt32 versMaj, versMin, versBugFix;
Gestalt(gestaltSystemVersionMajor, &versMaj);
Gestalt(gestaltSystemVersionMinor, &versMin);
Gestalt(gestaltSystemVersionBugFix, &versBugFix);
printf("Mac Version: %d.%d.%d\n", versMaj, versMin, versBugFix);
}
使用以下命令编译并运行此测试:
gcc -framework Carbon test.c && ./a.out
你可能还需要一个像-I/Developer/Headers/FlatCarbon/
这应该给出如下响应:Mac Version: 10.6.8
我在阅读official docs。
后创建了这个示例