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

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

66得票8回答
在C++中,"std::size_t"有意义吗?

在我继承的一些代码中,我经常看到size_t与std命名空间限定符一起使用。例如:std::size_t n = sizeof( long ); 当然,它能够编译和运行。但我认为这是一种不好的做法(可能是从C语言中继承下来的?)。 在C++中,size_t已经内置并且位于全局命名空间中,这是真...

27得票10回答
为什么size_t不是C语言的关键字?

sizeof是C语言的一个关键字,它返回一个名为size_t的类型的大小。然而,size_t并不是一个关键字,而是主要在stddef.h以及可能其他的C标准头文件中定义的。 考虑这样一种情况:您想创建一个不包括任何C标准头文件或库的C程序(比如创建操作系统内核)。在这种代码中,可以使用siz...

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

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

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...

24得票3回答
两个size_t对象相减是否安全?

我正在为我的团队调查使用size_t与int(或者long,等等)的标准。目前最大的缺点是如果对两个size_t对象进行差异操作,可能会引起问题(具体问题不确定--也许某些内容没有2的补码并且带符号/无符号可能会使编译器出现错误)。我在使用V120 VS2013编译器编写了一个快速的C++程序...

14得票3回答
如何定义一个自定义的跨平台size_t类型?

std::size_t通常用于数组索引和循环计数。根据定义,std::size_t是sizeof操作符的结果以及sizeof...操作符和alignof操作符(自C++11起)的无符号整数类型。它在以下头文件中定义: <cstddef> <cstdio> <c...

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

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

17得票3回答
printf是否需要使用%zu格式说明符?

我们在一个嵌入式平台上使用C89。我试图打印出size_t,但它没有起作用: 我们在嵌入式平台上使用C89。我尝试打印一个size_t,但无法运行:#include <stdio.h> int main(void) { size_t n = 123; print...

14得票2回答
将 ssize_t 或 size_t 转换

在我项目中使用的源文件中,有一个比较ssize_t和size_t变量的部分。ssize_t sst; size_t st; if(sst == st){...} 我想要消除这个警告:warning: comparison between signed and unsigned integer...