问题标签 [alignof]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
228 浏览

alignment - 如何对齐D中的结构成员?

我试过这个

失败,告诉我对齐仍然是1而不是8.

为什么会这样,我该如何解决它,以便它适用于任何 2 的幂(不仅仅是 8)的任意对齐?

0 投票
8 回答
18595 浏览

c++ - sizeof 和 alignof 有什么区别?

sizeof 和 alignof 有什么区别?

将输出

1/1 1/1 2/2 2/2 4/4 4/4 4/4 4/4 4/4 8/8 8/8 8/8

我想我不明白对齐是什么......?

0 投票
1 回答
1601 浏览

gcc - 为什么 gcc 不遵守对齐要求?

考虑以下 C++ 代码,它打印 a 的对齐要求double和类型 的结构成员的有效对齐double

在 codepag.org 上运行

我在 x86 上用 gcc 编译这段代码。

我期待这个程序能够输出8 8,但是它会打印出来8 4这是为什么?

0 投票
1 回答
4504 浏览

c++ - 如何解决“程序发出命令但命令长度不正确”。调用 Process32First() 时出错?

GetLastError 告诉我我收到“程序发出命令但命令长度不正确”。调用 Process32First() 时出错(参见下面的代码)。我发现一篇看起来很有帮助的帖子(http://social.msdn.microsoft.com/Forums/is/vcgeneral/thread/6f43716f-fdd3-4c92-bfba-6a23178c32bf),但我不确定这是否是我的问题.

我尝试构建一个仅包含 、 和 to test 的程序"stdafx.h",但我<iostream>仍然得到一个 4 的值。不确定这是否正确。<Windows.h><TlHelp32.h>__alignof(PROCESSENTRY32)

这是失败的代码:

0 投票
1 回答
1139 浏览

c++ - alignof 运算符有什么用?

我想知道alignof在 c++14 中在哪里使用运算符

我想知道alignof上面的程序有什么作用?

0 投票
1 回答
115 浏览

c++ - sizeof 和类型,保证

关于正确性,我找不到以下代码片段没有设计缺陷的证据/反驳。

我担心 Chunk 的所有内容,这里本质上用作与提供的类型具有相同大小的内存袋。我不想在 中显式创建 Item 对象m_memoryBlock,因此我需要某种“具有足够空间的内存块”。

我可以确定 Chunk 的大小与提供的类型相同吗?请提供一些这种假设不起作用的例子。

如果我的假设完全错误,我应该如何处理?

0 投票
3 回答
1680 浏览

c++ - `std::alignment_of` 与 `alignof`

我刚刚偶然发现了std::alignment_of类型特征,以及它即将成为朋友std::alignment_of_v。它们似乎被专门设计为等同于对 的普通调用alignof,并且未来添加的_v助手表明它不仅仅是一个遗留位。

std::alignment_of当我们有( _v) 时,有什么用alignof

0 投票
0 回答
206 浏览

clang++ - Clang 何时获得对 C++11 的 alignof 关键字的支持?

Clang 首先在r223186(2014 年 12 月)中声称支持__has_feature(cxx_alignof)C++11 的alignof关键字via 。这对应于 Clang 项目的营销版本号的 Clang 3.6。

但是那个版本实现了功能测试:alignof支持发生得更早。事实上,Clang 的 C++ 状态页面alignof是在 Clang 3.3 中实现的!

我在一个需要 Clang 3.3(或同等版本)但还不需要 Clang 3.6 的项目上工作。Clang 3.3-3.5 的alignof实现中是否存在延迟功能测试支持的错误,或者不支持仅仅是疏忽?alignof即使不支持__has_feature(cxx_alignof)可能声明,我可以安全地在这个项目中使用吗?alignof

0 投票
1 回答
1385 浏览

c++ - C++ 基本类型的对齐方式和大小

在 C++ 中,似乎对于所有整数类型(intlong long intstd::uint16_t、 ...)和浮点类型,它总是sizeof(T) == alignof(T).

这个编译器/平台是特定的,还是保证是真的?是否存在一个平台,其中int32_ts 不需要在 32 位边界上对齐(只要它们不重叠)?

0 投票
2 回答
854 浏览

c++ - 如何判断 C++ 中的最大数据对齐要求

参考this question and answer Memory alignment : how to use alignof / alignas?“对齐是对可以存储值的第一个字节的内存位置的限制。” C++ 中是否有一种可移植的方法来找出指令不出错所需的最高对齐粒度(例如在 ARM 中)?alignof(intmax_t)因为它是最大的整数原始类型就足够了吗?

此外,malloc 中的某些内容如何将数据与结构的边界对齐?例如,如果我有这样的结构

SomethingElse结构需要与 16 字节的倍数的边界对齐。现在,如果我像这样从 malloc 请求结构的内存

那么当 malloc 返回一个指向类似地址的指针时会发生什么40?这是无效的,因为指向SomethingElse对象的指针必须是 16 的倍数?