Tag: int

为什么.ToString()在空值的可空int上工作正常时,空string上的.ToString()会导致null错误?

selectedItem有两个字段: int? _cost string _serialNumber 在这个例子中, _cost和_serialNumber是两个null。 我正在阅读selectedItem的字段通过它们的属性,并填充文本框的值,当… TextBox1.Text = selectedItem.Cost.ToString(); //no error TextBox2.Text = selectedItem.SerialNumber.ToString(); //error 我明白, SerialNumber.ToString()是多余的(因为它已经是一个string),但我不明白为什么这会导致此exception: 可为空的对象必须有一个值。 int? _cost int? _cost是可空的,并没有价值,但它并没有给我例外。 string _serialNumber是可为空的,并没有一个值,但它确实给我例外。 这个问题就涉及到了,这个家伙本质上是要求同样的事情,但是没有指定的答案,而且这也不能解释为什么一个可为空的int ? 例如,我可以在可空的int上使用.ToString() ,但不能在空string上使用?

为什么当float不能表示所有的int值时,C ++将int提升为float?

说我有以下几点: int i = 23; float f = 3.14; if (i == f) // do something i将被提升为一个float ,并将两个float进行比较,但float是否可以表示所有的int值? 为什么不把int和float提升为double ?

为什么要uint32_t而不是uint_fast32_t?

看来, uint32_t比uint_fast32_t更普遍(我意识到这是一个轶事证据)。 尽pipe如此,这对我来说似乎是反直觉的。 几乎总是当我看到一个实现使用uint32_t ,它真正想要的是一个整数,可以保存值高达4,294,967,295(通常是65,535和4,294,967,295之间的某个较低的边界)。 使用uint32_t似乎很奇怪,因为不需要“正好32位”的保证,并且uint_fast32_t的“最快可用> = 32位”保证似乎是正确的想法。 而且,虽然它通常被实现,但uint32_t实际上并不保证存在。 那么为什么uint32_t更uint32_t ? 它是只是更好的了解,还是有技术上的优势?

这是什么布尔“(数字&1)== 0”是什么意思?

在CodeReview上,我发布了一段代码,并要求提供改进的提示。 我得到的是使用布尔方法来检查一个ArrayList是否有偶数个索引(这是必需的)。 这是build议的代码: private static boolean isEven(int number) { return (number & 1) == 0; } 由于我已经向那个特定的用户求助了很多帮助,所以我决定是时候纠缠这个SO社区了! 我真的不明白这是如何工作的。 该方法被调用并将ArrayList的大小作为参数(即ArrayList有十个元素,数字= 10)。 我知道一个人运行数字和1的比较,但之后我迷路了。 我读它的方式,它是说如果number == 0和1 == 0返回true。 我知道第一个不是真的,后者显然没有意义。 有人能帮我吗? 编辑:我应该补充说,代码的工作,以防万一有人想知道。

将一个int转换为std :: string

什么是最短的方式,最好是内联,将int转换为string? 使用stl和boost的答案将受到欢迎。

舍入一个double来把它变成一个int(java)

现在我正在尝试这个: int a = round(n); 其中n是一个double但它不工作。 我究竟做错了什么?

如何将string转换为C#中的整数

如何将string转换为C#中的整数?

哪个更快:if(bool)或if(int)?

哪个值更好用? 布尔真或整数1? 上面的话题让我在if条件下用bool和int做了一些实验。 所以出于好奇,我写了这个程序: int f(int i) { if ( i ) return 99; //if(int) else return -99; } int g(bool b) { if ( b ) return 99; //if(bool) else return -99; } int main(){} g++ intbool.cpp -S为每个函数生成asm代码,如下所示: asm代码f(int) __Z1fi: LFB0: pushl %ebp LCFI0: movl %esp, %ebp LCFI1: cmpl $0, 8(%ebp) je L2 movl […]

是否有可能区分0和-0?

我知道整数值0和-0本质上是相同的。 但是,我想知道是否可以区分它们。 例如,我怎么知道一个variables是否被赋值为-0 ? bool IsNegative(int num) { // How ? } int num = -0; int additinon = 5; num += (IsNegative(num)) ? -addition : addition; 内存中的值-0是否与-0保存?

如何快速将一个Double舍入到最近的Int?

我试图做一个增长率计算器( Double ),将结果四舍五入到最近的整数,并从那里重新计算,如此: let firstUsers = 10.0 let growth = 0.1 var users = firstUsers var week = 0 while users < 14 { println("week \(week) has \(users) users") users += users * growth week += 1 } 但迄今为止我还没有办法 编辑我有点这样做: var firstUsers = 10.0 let growth = 0.1 var users:Int = Int(firstUsers) var week = […]