0

在此处输入图像描述
有人可以建议我哪里出错了吗?

4

3 回答 3

3

尝试像这样编写 curl url:-

NSString* curlURL = [NSString stringWithFormat:@"https://api.500px.com/v1/photos?.....rpp=20&page=%d", 123];

希望给定的字符串格式对您有所帮助..谢谢

于 2016-03-30T07:59:01.037 回答
1

一个更详细的问题。首先快速回复:

您不能从 objC 调用 swift plain 函数。您可以调用方法,但不能调用普通 f。

见下文:

// 快速类:

@objc class Klass: NSObject {

    var a = 100
    
     @objc public func F1()->String{
        return "F1"
    }

    
    @objc public func F2()->NSString{
        return "f2"
    }

}

func myF()->String{
    return "FFF"
}


func myG()->NSString{
    return "GGG"
}

在 objC 中:

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];
    Klass* k = [Klass new];
    
    NSString * s1 = [k F1];
    NSString * s2 = [k F2];

    s1 = k.F1;
    s2 = k.F2;
    
    NSString * sf = myF(); // ERROR! ... Implicit conversion of 'int' to 'NSString *' is disallowed with ARC
    NSString * sg = myG(); // ERROR!     "      "   "
}

如果您添加纯 C 代码(添加包含等...)

包括“plainFunctions.h”

//file:plainFunctions.c
#include "plainFunctions.h"

int myN()
{
    return 100;
}

您可以致电:

- (void)viewDidLoad {

    [super viewDidLoad];
    int n = myN();
}

甚至:

//h:
char * myC(void);


// objC:
    NSString * fromC = [NSString stringWithCString:myC() encoding: NSUTF8StringEncoding];
于 2020-02-08T16:24:53.170 回答
0

当心逗号运算符。消息说... disallowed with ARC是红鲱鱼,这里的问题是您正在为NSString*.

从您的屏幕截图中并不完全清楚,我在这里总结一下:

NSString *currurl = (@"https://some-string-%d", 'abcd');

.. 看起来你正在尝试编写一个NSString*.

但是,编译器正在评估一个由NSString*、逗号运算符和一个字符组成的表达式,其中结果是该逗号运算符的右手操作数。所以它试图分配abcdcurrurl.

请记住,字符在基于 C 的语言中是整数类型(在 Java 中也是如此),因此抱怨Implicit conversion of 'int' to 'NSString *'

于 2016-03-30T08:17:12.330 回答