"格式塔"有什么作用?

fdh*_*fdh 2 c unix macos

在Mac OS X上,格式塔的功能是什么?它是干什么用的?你能举个简单的例子吗?我知道它与系统调用有关,但具体到底是什么?

JRi*_*out 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);
}
Run Code Online (Sandbox Code Playgroud)

编译并运行此测试:

gcc -framework Carbon test.c && ./a.out
Run Code Online (Sandbox Code Playgroud)

你可能还需要一面旗帜 -I/Developer/Headers/FlatCarbon/

这应该给出如下响应: Mac Version: 10.6.8

我在阅读官方文档后创建了这个例子.