Ios 转换为二进制-长整数

Ios 转换为二进制-长整数,ios,objective-c,cocoa,binary,Ios,Objective C,Cocoa,Binary,我们需要将以下数据类型转换为二进制: 长到二进制 将整数转换为二进制 在此方面的任何帮助都将不胜感激 我的密码是: 根据以上链接,我们有 - (NSString *) longlongToBinary:(long long) val { long long num = val; NSString *res = [NSString string]; for (long long i=63; i>=0; i--) { long long div = 1l<<i;

我们需要将以下数据类型转换为二进制:

  • 长到二进制
  • 将整数转换为二进制
  • 在此方面的任何帮助都将不胜感激

    我的密码是:

    根据以上链接,我们有

     - (NSString *) longlongToBinary:(long long) val {
    
    long long num = val;
    NSString *res = [NSString string];
    
    for (long long i=63; i>=0; i--)
    {
    
        long long div = 1l<<i;
        if ((num&div)==div) res = [res stringByAppendingString:@"1"];
        else res = [res stringByAppendingString:@"0"];
    }
    
    return res;
    
    -(NSString*)longlongtobilian:(long-long)val{
    long-long-num=val;
    NSString*res=[NSString];
    对于(长i=63;i>=0;i--)
    {
    
    long long div=1l
    long
    仅为32位。由于该方法名为
    longlongToBinary
    ,请将所有
    long
    变量更改为
    long
    。这将提供您正在使用的64位


    现在您已经将大多数变量更改为
    long
    ,将循环变量
    i
    更改回
    int
    ,并将
    1l
    常量更改为
    1ll
    long
    仅为32位。由于该方法名为
    longlongtobilian
    ,因此将所有
    long
    变量更改为ode>long-long
    。这将提供您正在使用的64位


    现在您已经将大多数变量更改为
    long
    ,将循环变量
    i
    更改回
    int
    ,并将
    1l
    常量更改为
    1ll
    文本
    1l
    仍然很长。这就是为什么您会看到两次输出。将文本更改为
    1l
    文本
    1l
    仍然只有很长。这就是为什么您会看到两次输出。将文本更改为
    1l

    您只使用
    long
    ,而不是
    long
    …不应该
    1l
    1l
    ?是的,这就解决了问题。谢谢你只是一个提示,你没有转换,你正在格式化。你只使用
    long
    ,不是
    long long
    …不应该
    1l
    1l
    ?是的,这就解决了问题。谢谢你只是一个注释,你不是在转换,你是在格式化。我刚刚更改了它,但问题仍然是一样的。我刚刚更改了它,但问题仍然是一样的。