4

這工作得很好,大家都知道:在NSString中包含一個變量?

NSString *textoutput = @"Hello"; 
outLabel.text = textoutput; 

但是,如果你想要的東西,以包括NSString聲明類似以下內部變量:

NSString *textoutput [email protected]"Hello" Variable; 

在C++中我知道當我cout的東西,我想包括一個變量我所做的就是soemthing這樣的:

cout << "Hello" << variableName << endl; 

所以我想用Objective-C來實現這一點,但我不知道如何。

回答

13

您可以使用下面的功能做一些別緻的格式:

NSString *textoutput = [NSString stringWithFormat:@"Hello %@", variable]; 

注意%@假設variable是一個Objective-C對象。如果是C字符串,請使用%s,如果是其他C類型,請查看printf參考。

或者,您也可以通過附加一個字符串到現有的字符串創建一個新的字符串:

NSString *hello = @"Hello"; 
NSString *whatever = [hello stringByAppendingString:@", world!"]; 

注意NSString是不可變的 - 一旦你分配一個值,你不能改變它,只能得出新的對象。如果你要附加很多字符串,你應該改用NSMutableString

+0

謝謝,很高興知道,它工作得很好@RavuAlHemio – rs14smith

+1

沒問題。如果你對答案進行upvote(向上三角形)並「接受」其中一個(複選標記),我們會很高興。這些是Stack Overflow表達感謝的標準方式。 ;-) – RavuAlHemio

5

我中有你正在尋找,羅伯特·史密斯治癒:

,如果你的變量是一個對象,使用此:
NSString *textOutput = [NSString stringWithFormat:@"Hello %@", Variable];

的「%@」將只爲對象。對於整數,它是'%i'。

對於其他類型的,或者如果你想在它產生的字符串更專一,use this guide

+0

工作就像一個魅力,謝謝@Jordaan Mylonas – rs14smith

+2

Aww,沒有人注意到我的雙關語。 –

+0

@Jordaan哈哈。好玩=) – justin

相關問題