Clang C++;Builder 10.2 64位-如何设置数据包对齐?

Clang C++;Builder 10.2 64位-如何设置数据包对齐?,clang,c++builder,clang++,llvm-clang,Clang,C++builder,Clang++,Llvm Clang,我正忙于将C++Builder 10.232位DLL项目编译为64位DLL 这个DLL是一些其他专有软件的插件。 此应用程序的SDK中规定: 为64位版本的应用程序设置“结构成员对齐” 投影到8字节 因为我不想接触SDK的头文件,所以我需要一种方法告诉BCC64使用8字节的对齐方式作为默认值 看着 对于那些编译器选项有一个表,但是对于BCC64不幸的是,到处都是N/a 我如何告诉C++Builder的64位编译器使用该打包,为什么基于叮当的BCC32c支持这些设置,而同样基于叮当的BCC64不支

我正忙于将C++Builder 10.232位DLL项目编译为64位DLL

这个DLL是一些其他专有软件的插件。 此应用程序的SDK中规定:

为64位版本的应用程序设置“结构成员对齐” 投影到8字节

因为我不想接触SDK的头文件,所以我需要一种方法告诉BCC64使用8字节的对齐方式作为默认值

看着 对于那些编译器选项有一个表,但是对于BCC64不幸的是,到处都是N/a

我如何告诉C++Builder的64位编译器使用该打包,为什么基于叮当的BCC32c支持这些设置,而同样基于叮当的BCC64不支持这些设置


也许您可以使用
#pragma pack(push,8)
或类似的(以及
#pragma pack(pop)
来恢复)?FWIW,我认为8是默认的打包。这应该很容易测试,使用一个具有不同大小整数的简单结构并检查偏移量。而且,如果头文件很好,它们应该已经这样做了。只需浏览它们,找到单词“pack”,看看它们是怎么做的。@RudyVelthuis:“这应该很容易测试,使用一个具有不同大小整数的简单结构并检查偏移量”-或者改用它。@Remy:谢谢。我甚至不知道它已经实施了。它也适用于结构化类型吗?它是否提供了所需的对齐方式,或实际的对齐方式集?是的,我知道我可以测试一下<代码>。