如果ptrdiff_t是无符号的,它将能够引用两倍的元素。 在我的机器上PTRDIFF_MAX扩展到9223372036854775807i64 ,而ULLONG_MAX是18446744073709551615Ui64 。 我知道这些价值本身是巨大的,但如果选择类型 ( ptrdiff_t ) ...
如果ptrdiff_t是无符号的,它将能够引用两倍的元素。 在我的机器上PTRDIFF_MAX扩展到9223372036854775807i64 ,而ULLONG_MAX是18446744073709551615Ui64 。 我知道这些价值本身是巨大的,但如果选择类型 ( ptrdiff_t ) ...
这个 C 程序给出的 o/p 为: 据我了解,存储在这些地址的值是垃圾。 他们的减法怎么会是1呢? 谁能解释一下如何? ...
为什么 C 为两个指针之间的差异定义一个单独的类型? 例如,为什么不能将其定义为long long ,甚至不能定义为intmax_t ? 是否有过intmax_t不等于ptrdiff_t的时候? 基本上,为什么这个 typedef(具有特定的字符串格式等)有用是什么意思? 作为一个基本的使用示例, ...
在我的平台上(我认为在大多数平台上) std::size_t和std::ptrdiff_t具有相同的大小和相同的 alignment。 有没有不正确的平台? 简而言之:标准是否要求? ...
由于指针算术是在同一个数组中定义的,我怀疑我们是否可以从另一个NULL NULL 我担心以下方面的实施: 注意:这个关于 C 的问题。如果您正在寻找 C++ 问题,它就在这里(答案不同!)。 C 和 C++ 也有一个共同的问题。 ...
我正在通过连续的内存块实现迭代器,并且遇到了关于其符合使用的问题。 我当前的实现(假设我正在遍历char的数组)。 问题是标准声称6.5.6(p9) : 当减去两个指针时,两个指针都指向同一个数组对象的元素,或者指向数组对象的最后一个元素的元素 这是真的。 我假设我 ...
在这篇由Andrey Karpov撰写的题为“关于size_t和ptrdiff_t ”的博客文章中,他展示了一个例子, 但是,我不确定这是否正确,似乎应该如此 这个对吗? 我知道我们也应该使用类似memset东西,但让我们完全避免这种情况。 我只问这种类型 ...
对于将指针i和j减去同一数组对象的元素, [expr.add#5]中的注释读取: [ 注意:如果值i-j不在std::ptrdiff_t类型的可表示值范围内,则行为未定义。 - 结束说明 ] 但是给出[support.types.layout#2] ,其中指出( 强调我的 ...
我在C中有这个结构: 但是,SWIG生成的Java代码是: 我希望在Java SWIGTYPE_p_ptrdiff_t ptrdiff_t转换为long ,而不是SWIGTYPE_p_ptrdiff_t ,在其中我无法访问实际的long值。 如何在SWIG中控制它? ...
我已经制作了自己的源文件,并且正在尝试添加 stddef.h。 在编译时,我有以下错误: std::ptrdiff_t' 尚未声明。 我做错了什么? ...
是否存在跨平台的方法来确定ptrdiff_t在预处理期间是long还是long long ? 我知道__PTRDIFF_TYPE__应该用gcc / g ++给出类型,但是似乎没有在Windows的VC / VC ++中定义。 有没有比以下更好的方法? 如果在预处理期间无法执行, ...
我很难在size_t和ptrdiff_t之间选择索引类型,它应该能够存储负值。 确切地说,在我的代码中,我需要实现一个数组。 我接收它的长度(在构造函数中)作为size_t的类型,当我重载[] operator我需要索引类型为ptrdiff_t (而不是size_t ),因为我想允许负索 ...
我有一个组成哈希表的指针的malloc'ed数组。 要遍历哈希表,我将使用指针算法,例如: 问题是我应该将sizeof()返回的size_t ptrdiff_t为ptrdiff_t以便在for条件的增量部分中正确添加吗? 还是添加无关紧要? ...
我有一个名为node的简单结构,该结构具有一个值+ 2个指向下一个/上一个节点的指针。 在这里,我们具有将新节点添加到末尾的功能。 在main中,我们创建100个链接的节点,每个节点都有一个唯一的int值。 以下是指向第一个/最后一个节点的指针: 当尝试应用指针算 ...
C99标准规定: 当减去两个指针时,两个指针都指向同一个数组对象的元素,或者指向数组对象的最后一个元素的元素 请考虑以下代码: 这显然打破了上述规则,因为p和q指针指向不同的“数组对象”,并且根据规则, q - p差异是未定义的。 但在实践中,为什么这样的事情会导 ...