12得票4回答
比较 size_t 和 -1 的大小

注意:有人建议这个问题是重复的Can I compare int with size_t directly in C?,但是这里的问题特别询问如何将size_t与负值进行比较。因此,它应该重新打开。(而且,它已经引发了很多深思熟虑的讨论!) 我正在查看一些库代码(我在看你,Microchip...

11得票2回答
C++中size_t的性能表现

我将这里的代码翻译成了以下C++代码 #include <iostream> using namespace std; int t = 20; bool is_evenly_divisible(const int a, const int b) { for (int...

11得票5回答
C++:使用uint64_t而不是size_t的原因是什么?

我的理解是,size_t 的作用是可以保存你期望保存的任何(整数)值。例如,如果你使用类似于 for 循环来迭代 vector 中的所有元素,则 size_t 通常会有 64 位长(至少在我的系统上),以便它可以保存 vector.size() 返回的所有可能值。所以,相比于 A,B 更好: ...

11得票3回答
如何从字符串中获取size_t?

我需要从用户输入中获取一个数组大小。对我来说,将输入存储为 size_t 似乎是很自然的选择,但是当我寻找合适的 strto...() 函数时,却没有找到任何一个适用于 size_t 的函数。因此,我只好使用 strtoull(),因为 unsigned long long 至少保证具有 64...

11得票6回答
为什么使用 size_t 更好?

这个标题实际上有点误导,但我想让它保持简短。我已经了解了为什么应该使用size_t,常常看到这样的说法: size_t能够表达任何对象(包括数组)最大的大小。 我不是很理解这是什么意思。在一次性分配多少内存上有某种限制,而 size_t 确保足够大以计算该内存块中的每一个字节吗? ...

10得票6回答
在Ubuntu 8.1上,g++-4.1或其他编译器无法找到size_t。

我之前也遇到过这种情况,但是我不记得我是怎么解决的了。 在新的Ubuntu安装上,我无法编译某些程序……我的头文件似乎有问题。 我已经尝试了g++-4.1和4.3,但没有成功。g++ -g -frepo -DIZ_LINUX -I/usr/include/linux -I/usr/inc...

10得票3回答
将整数字面量添加或赋值给size_t类型

在C语言中,我看到很多将整数字面值添加或赋值给size_t变量的代码。size_t foo = 1; foo += 1; 这里发生了什么类型转换,是否可能将 size_t "升级" 为 int,然后再转换回 size_t?如果我处于最大值,这种情况会发生截断吗?size_t foo = SIZ...

10得票7回答
使用无符号整数在For循环条件中反向迭代数组时,将停止条件设置为0会导致无限循环。

我有一个循环,必须从 j 到 0 (包括0)。我的 j 变量的类型是 size_t,通常是无符号的。 我的代码:#include<stdio.h> #include<conio.h> #define SIZE 100 int main(){ char st...

10得票2回答
LLVM中是否有类似于size_t的等效类型?

一些系统库,如malloc和strlen,需要或返回size_t作为参数。 在LLVM IR中与这些函数交互的正确选择是什么? 选择任务是否由编译器完成? LLVM IR是否有size_t类型?

9得票2回答
为什么C/C++中存在size_t,它是否应该被替换?

我曾是一名电气工程师,现在是一名计算机科学家。对我来说,在C ++中有许多东西几乎相同,但不完全相同,这让我很难理解。一个例子是 short 与 int vs unsigned int vs size_t vs long int vs long long int vs ui...