質問

関数からNSStringを返す必要があります:

NSString myfunc ( int x )
{
    // do something with x  
    NSString* myString = [NSString string];
    myString = @"MYDATA";   
    // NSLog(myString);

    return *myString;       
}

したがって、この関数を呼び出して* myStringを取得します。それはデータへのポインターですか?データ" MYDATA"にアクセスするにはどうすればよいですか?

役に立ちましたか?

解決

この関数を次のように書き換えます:

NSString* myfunc( int x )
{
   NSString *myString = @"MYDATA";

   // do something with myString
   return myString;        
}

Objective-Cでは、オブジェクト自体ではなく、オブジェクトへのポインターを使用することが一般的です。つまり、例では、 NSString ではなく、 NSString * を使用します。

さらに、 @" MYDATA" はすでに文字列であるため、割り当ての前にmyStringを割り当てて初期化する必要はありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top