问题标签 [sizeof]

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 投票
3 回答
34926 浏览

c++ - 当一个函数有一个特定大小的数组参数时,为什么用指针替换它?

鉴于以下程序,

输出

  1. 为什么数组作为指向第一个元素的指针传递?
  2. 它是C的遗产吗?
  3. 标准是怎么说的?
  4. 为什么放弃了 C++ 的严格类型安全?
0 投票
2 回答
22812 浏览

c# - Marshal.SizeOf 计算大小错误

我有一个结构

我收到以下错误

System.ArgumentException 未处理 Message="Type 'SERVER_USB_DEVICE' 无法作为非托管结构封送;无法计算有意义的大小或偏移量。"

在下一行

代码有什么问题?

阿卜杜勒哈利克

0 投票
11 回答
6069 浏览

c - C中的指针实现细节

我想知道违反我在下面列出的假设的架构。另外,我想知道是否有任何假设对于所有架构都是错误的(也就是说,如果其中任何一个完全错误)。

  1. sizeof(int *) == sizeof(char *) == sizeof(void *) == sizeof(func_ptr *)

  2. 无论指向的数据类型如何,给定体系结构的所有指针在内存中的表示都是相同的。

  3. 指针的内存表示形式与架构相同位长的整数相同。

  4. 只有编译器禁止指针数据类型的乘法和除法。注意:是的,我知道这是荒谬的。我的意思是 - 是否有硬件支持来禁止这种不正确的使用?

  5. 所有指针值都可以转换为单个整数。换句话说,哪些架构仍然使用段和偏移量?

  6. 增加一个指针相当于增加了指针sizeof(the pointed data type)存储的内存地址。If pis an int32*thenp+1等于 4 字节后的内存地址p

我最习惯于在连续的虚拟内存空间中使用指针。对于这种用法,我通常可以将它们视为数轴上的地址。请参阅堆栈溢出问题指针比较

0 投票
3 回答
10863 浏览

c - 浮点大小(3.0)与(3.0f)

sizeof(3.0) 和 sizeof(3.0f) 有什么区别

我期待他们两个给出相同的结果(sizeof float)..但它不同。

在 32 位机器中,gcc 编译器,sizeof(3.0f) =>4 sizeof(3.0) => 8

为什么这样?

0 投票
2 回答
1467 浏览

c++ - 继承自具有虚函数的基类的类的 sizeof

对于以下代码片段。

我似乎注意到的行为是,每当实例化一个空类或从字节边界继承一个空类时,都不会考虑(即:允许大小为 1 字节的对象),在所有其他情况下,对象大小似乎由字节边界。

这是什么原因?我问,因为在这一点上我猜。

0 投票
1 回答
82 浏览

asp.net - 如何以编程方式确定 div 标签在渲染时的高度?

我希望能够加载一个页面,一旦添加了所有内容,看看它有多高,并将其作为隐藏参数包含在内,以便稍后获取。有没有办法做到这一点?

[注意] 澄清一下,我必须在后面执行这个 n 代码,因为它必须通过 webrequest 对象检索。

0 投票
2 回答
51352 浏览

c++ - Sizeof 字符串字面量

以下代码

输出

在 32 位操作系统上,使用 GCC 编译。

  1. 为什么要sizeof计算字符串文字的长度(所需的空间)?
  2. 字符串文字是否具有不同的类型(来自 char* 或 char[])sizeof
0 投票
11 回答
34533 浏览

c - 如何在不使用 sizeof 的情况下找到变量的大小

让我们假设我已经声明了某个数据类型的变量“i”(可能是 int、char、float 或 double)......

注意:只需考虑声明了“i”,如果它是 int 或 char 或 float 或 double 数据类型,请不要打扰。因为我想要一个通用的解决方案,所以我只是提到变量“i”可以是任何一种数据类型,即 int、char、float 或 double。

现在我可以在没有 sizeof 运算符的情况下找到变量“i”的大小吗?

0 投票
10 回答
24630 浏览

c - 为什么 sizeof 被认为是运算符?

为什么被sizeof认为是运算符而不是函数?

作为运营商需要具备哪些资产?

0 投票
6 回答
4977 浏览

c++ - 确定结构成员大小的常用 C/C++ 宏是什么?

在 C/C++ 中,如何在不需要定义该结构类型的虚拟变量的情况下确定结构成员变量的大小?这是一个如何做错的示例,但显示了意图:

作为参考,如果您首先定义一个虚拟变量,这应该是如何找到“x”的大小:

但是,我希望避免仅仅为了获得“x”的大小而创建一个虚拟变量。我认为有一种巧妙的方法可以将 0 重铸为 myStruct_t 以帮助查找成员变量“x”的大小,但它已经足够长,以至于我已经忘记了细节,并且似乎无法在这方面得到很好的谷歌搜索. 你知道吗?

谢谢!