草庐IT

double_it

全部标签

c++ - 在 C++ 中检查 double 是否为 2 的幂而无需位操作的代码

为了检查double是否是2的幂,我找到了这段代码:unsignedlonglongint&p=*(unsignedlonglongint*)&x;unsignedintexp=(p>>52)&0x7FF;if(exp==0||exp==0x7FF)returnfalse;return(p&0xFFFFFFFFFFFFFULL)==0;然而,它未能通过某些架构的基本测试。我想那是因为整数的长度不同。所以我试图找出一个不进行位操作的简单替代方案:boolisPot(doublea){returna==0.?false:(1./a)*a==1.;}假设任何除以一个不是2的幂的数字都会在尾数

c++ - 除 double 时意外的精度损失

我有一个函数getSlope,它以4个double作为参数,并返回另一个使用给定参数按以下方式计算的double:doubleQSweep::getSlope(doublea,doubleb,doublec,doubled){doubleslope;slope=(d-b)/(c-a);returnslope;}问题是,当使用参数调用这个函数时,例如:getSlope(2.71156,-1.64161,2.70413,-1.72219);返回结果为:10.8557这对我的计算来说不是一个好的结果。我已经使用Mathematica计算了斜率,相同参数的斜率结果是:10.8452或为了精确而

c++ - 从 double 转换为 float 时检测精度损失

我正在编写一段代码,其中我必须将double值转换为浮点值。我正在使用boost::numeric_cast进行此转换,它会提醒我任何溢出/下溢。但是我也有兴趣知道这种转换是否会导致一些精度损失。例如doublesource=1988.1012;floatdest=numeric_cast(source);产生值为1988.1的dest有什么方法可以检测到这种精度损失/舍入 最佳答案 您可以将float转换回double并将此double与原始double进行比较-这应该可以让您清楚地了解是否存在精度损失。

c++ - move : what does it take?

使用std::string的move赋值运算符(在VC11中)需要什么?我希望它会自动使用,因为在赋值后不再需要v。在这种情况下是否需要std::move?如果是这样,我还不如使用非C++11交换。#includestructuser_t{voidset_name(std::stringv){name_=v;//swap(name_,v);//name_=std::move(v);}std::stringname_;};intmain(){user_tu;u.set_name("Olaf");return0;} 最佳答案 Ihope

ios - build设置 : What changes should I do in the build settings so that on releasing the app it will show the languages on App Store as only English?

我在上传iOS应用程序时犯了一些错误,这使得我的应用程序在AppStore上显示为英语和德语。场景是我将(目标的info.plist)中的“本地化本地开发区域”键设置为德国,而我的应用程序实际上是一个英语应用程序(适用于所有地区)。但我不确定将此key更改为美国是否可以将应用程序的Appstore语言更改为仅英语。除此之外,我还在(项目信息)中的Localizations中将语言设置为:1.英文-开发语言2.德语我应该在设置中做哪些更改,以便在发布应用程序时它在AppStore中仅显示英语语言? 最佳答案 在尝试将应用程序上传到应用

ios - NSRunLoop : Is it really idle between kCFRunLoopBeforeWaiting & kCFRunLoopAfterWaiting?

我对NSRunLoop循环很感兴趣,尤其是主运行循环。通过CFRunLoopObserverRef,我们可以了解更多:CFRunLoopObserverRefobserverRef=CFRunLoopObserverCreateWithHandler(NULL,kCFRunLoopAllActivities,YES,0,^(CFRunLoopObserverRefobserver,CFRunLoopActivityactivity){if(activity==kCFRunLoopBeforeTimers){weakSelf.runloopId+=1;}NSLog(@"RunloopId

ios - 在带有 AND 且不带小数点的标签中显示 double

要查看最佳答案,请向下滚动到Paulw11的答案。(对于任何英语错误,我深表歉意,这不是我的第一语言)我需要解决这个问题才能继续开发我的应用。Here,我得到了截图。(我知道,这很丑陋,我正在设置约束。)问题是:即使数字是整数,它仍然显示为有理数。(例如:4显示为4.0,16显示为16.0)我想要的是:当文本字段中的数字是整数时,我希望它不带小数点出现。(4显示为4,16显示为16)当文本字段中的数字是有理数时,我希望它与属于它的小数点一起出现。(4.2显示为4.2,2.5显示为2.5)我不希望发生的事情:四舍五入任何数字。这会破坏数学。正如我所说,4.22需要是4.22。但是4.0只

ios - Xcode 7 + swift 。 "Use of local variable ' _' before its declaration"错误

我在尝试创建检查用户输入和存储数据的函数时遇到上述错误。在我到达此函数RegisterButtonTapped()之前,我的项目构建良好。有没有人有一些结构或语法更改可以消除此错误?@IBActionfuncRegisterButtonTapped(sender:AnyObject){letuserEmail=userEmailTextField.text;letuserPassword=userEmailTextField.text;letuserRepeatPassword=userRepeatPasswordTextField.text;//Checkforemptyfields

ios - SpriteKit : Is there a way to centre a SKLabelNode according to its baseline

一个标签有四个不同的verticalAlignmentMode:.Baseline,.Bottom,.Center和.Top.我希望标签根据其基线以其位置为中心。.Center对我不起作用,因为框架的底部不是文本的基线,而是最低字母的底部(例如“y”)。我也尝试过使用.Baseline并从y位置减去框架高度的一半,但这也不起作用,导致与.Center相同的问题.我试图居中的标签中的文本是“播放!”。将模式设置为“.Center”会使文本略高于我想要的高度,这一点非常明显。将文本更改为“Pla!”解决了这个问题,因为'y'被删除并且没有字符卡在基线以下(虽然我显然不能这样做作为解决方案)

ios - iOS Swift 格式正确的 ."UserInfo={NSDebugDescription=Garbage at end ---> Data cannot be read because it isn' t 末尾的垃圾

所以这是我的网络请求。//MARK:-网络请求leturlString=Constants.kBaseUrl+Constants.kEventsUrlAlamofire.request(.GET,urlString,parameters:nil,encoding:.JSON,headers:[Constants.kChecksum:Constants.kChecksumValue]).responseJSON{responseinguardresponse.result.isSuccesselse{letalertController=UIAlertController(title:"