什么意思在c?

const struct sockaddr FAR* name, 

这是分段存储器架构时代的一个旧的扩展。 它基本上意味着“这是一个指针,需要能够指向任何地址,而不仅仅是与使用它的代码在同一段中的东西”。

查看更多或在维基百科页面上 。

far在C中没有任何意义。查看C99标准 [PDF]并查看是否可以找到远指针的提及。 远端指针是添加到针对8086/80286体系结构的编译器的扩展,以提供对分段内存模型的支持。

除非您碰巧使用16位x86编译器,否则什么都不做。

如果您查看Win32标头WinDef.h(在Visual Studio中,只需右键单击源中的单词FAR并选择“转到定义”,您将看到它是一个定义为far的宏,这反过来也是一个宏定义为什么都没有!

它只是允许将传统的Win16源代码编译为Win32。 在16位x86编译器中, far是一个编译器扩展关键字,用于支持seg :: offset指针,这些指针解析为20位地址(16位x86只有1Mb地址空间!)。 它们与16位near指针不同,它们只包含当前段的:: offset。