【问题标题】:Converting decimal number to binary Objective-C将十进制数转换为二进制 Objective-C
【发布时间】:2014-04-21 00:20:04
【问题描述】:

您好,我制作了一个可以转换二进制、十六进制和十进制值的 IOS 应用程序。除了我的十进制到二进制转换外,一切都很好。这就是我所拥有的。它返回 0 和 1,但太多了。谁能告诉我为什么会这样或用更好的方法帮助我?

NSString *newDec = [display text]; //takes user input from display
NSString *string = @"";
NSUInteger x = newDec;
int i = 0;
while (x > 0) {
    string = [[NSString stringWithFormat:@"%u", x&1] stringByAppendingString:string];
    x = x>> 1;
    ++i;
}
display.text = string; //Displays result in ios text box 

【问题讨论】:

  • 我测试了你的代码,它运行良好

标签: objective-c algorithm binary decimal converter


【解决方案1】:

试试这个:

NSUInteger x = [newDec integerValue];

而且下次不要忽略编译器的“Incompatible pointer to Integer conversion”提示...

说明:Afaik,将一个对象分配给一个 int,实际上是将对象的地址分配给该整数,而不是字符串的内容(这是您想要的)。

【讨论】:

    猜你喜欢
    • 2015-12-02
    • 1970-01-01
    • 2010-12-08
    • 2017-02-18
    • 2014-04-17
    • 2012-06-26
    • 2011-01-08
    • 1970-01-01
    • 2020-10-27
    相关资源
    最近更新 更多