问题标签 [size-t]
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.
c++ - size_t 和 __w64、time_t 和 __int64 是如何工作的?
我不是 C 或 C++ 方面的老手。我不知道如何time_t
定义和设计。几个帖子,如:
但这些帖子只说明什么是time_t
或size_t
。它没有明确说明 time_t 或 size_t 是如何以及在何处定义和声明的。
我正在使用WIN8 VS2012 Express C++。我搜索了库,发现它size_t
是在crtdefs.h
而不是cstddef
.
- 为什么需要像
size_t
,之类的类型time_t
?我们可以让sizeof
只是返回unsigned int
。 - 为什么 C++ 库没有定义
size_t
? - 我可以说 size_t不是C/C++ 内置类型吗?
- 我永远不需要在我的程序中包含相应的头文件来使用
size_t
或time_t
(也许它们是在std
命名空间中定义的)。
我在库中再次搜索,发现size_t
定义为typedef _W64 unsigned int size_t
,_W64
定义为__w64
。在这里,我无法更多地搜索__w64
定义或声明的位置。
- 什么是
__w64
类型?C++11/C99 标准中没有说明。
同样,当我搜索 时time_t
,我发现__int6
. 却不知从何__int64
而来。
c++ - C++ 中 size_t 的性能
我将这里的代码翻译成C++如下
在 Mac OSX 10.8.4 上的编译器 g++ 4.8.1 上使用 -O3 标志,我得到了 0.568 秒的用户时间。
现在如果我将函数 is_evenly_divisible 的第 1 行中的计数器 i 更改为 size_t,时间会突然跳到 1.588s。即使我将所有变量都更改为 size_t,这种情况仍然存在,时间增加到 1.646s
发生了什么?size_t 不应该提高性能而不是降低性能,因为它是比 int 更具体的类型?
c - C size_t 不在 printf 中打印
我有两个字符串,它们都相等,我得到它们的长度是这样的
我需要知道它们等于什么,因为字符串并不总是相等,所以我尝试打印出这样的两个值
但是,这什么也没打印。如果我把这个
在它上面的行中,它打印出test string test string
,这告诉我两个字符串都不是NULL
. 是什么导致字符串长度不打印?
c++ - 我应该如何索引课堂外的私有向量?
假设我有这样的情况:
并假设我需要限制对矢量元素的访问以进行编辑和/或阅读。我应该使用什么类型的索引(int
、long
、std::size_t
、自定义迭代器或其他)从 A 类外部指定向量中的元素?
以下索引是否正确?
我还有什么其他选择?
c++ - 就 size_t 而言,“目标平台上最大可能对象的大小”是多少
我正在阅读有关size_t
C/C++ http://web.archive.org/web/20081006073410/http://www.embedded.com/columns/programmingpointers/200900195的文章(通过 Stackoverflow 找到的链接)。
引用文章:
类型 size_t 是一个 typedef,它是一些无符号整数类型的别名,通常是 unsigned int 或 unsigned long,但甚至可能是 unsigned long long。每个标准 C 实现都应该选择足够大的无符号整数(但不大于所需)来表示目标平台上最大可能对象的大小。
如何确定机器上最大可能对象的大小?
什么会影响最大对象的大小(除了处理器)?
欢迎链接详细解释。
c++ - 从 unsigned_int 到 size_t 的有问题的转换
首先,我是一个 C++ 新手。如果这个问题听起来很愚蠢,请原谅。
我在从 unsigned_int 转换为 size_t 时遇到问题,如 VS 编译器中所示。以下是导致编译器抱怨的代码行。
当它运行到这一行时它会抱怨:
任何想法将不胜感激。它会阻止 VS 编译。
c - 为什么 sizeof(size_t) 不是 1?
我只是想知道:既然sizeof()
' 的返回类型是size_t
,为什么sizeof(size_t)
给我4
?也就是说,当 I 时malloc(someSize)
,我要求的是someSize
bytes 还是someSize*4
bytes ?
我已经做了两天的 ASM 作业,现在我很困惑。谢谢你的帮助!
c++ - C++ 中用于 size_t 类型的 ceil() 和 floor() 函数
我有两个变量:
我调用了函数ceil(a/b)
。自然,我会假设答案返回2
但它返回1
。
我很困惑。我尝试将变量转换为double或int,但似乎没有帮助。
谢谢你的帮助。
c++ - typedef 用于可以包含 size_t 的有符号类型?
有符号类型的标准(或 MSVC 专有)类型定义可以包含所有size_t
值吗?即在 64 位系统上,它将是一个 128 位有符号整数。