2015-11-04 21 views
5
Ben biçim belirteçleri ile çalışıyoruz

anlama ama ben bu %[email protected]%2$d gördü ve anlamadı bir öğretici gibi %d veya %@ ama bugün jenerik edildi neyi temsil ediyorlar.
Bir hesap makinesi örneğiydi, bu nedenle bunları şu ifadede kullanıyorlar: stack = [NSString stringWithFormat:@"%[email protected]%2$d",stack,number];objektif c

cevap

5

Sayılar konumsal parametreleri temsil eder. Biçim dizesini izleyen parametreler, dizilerdeki parametrelere göre konumlarına göre dizilir. İlk parametre% 1 yuvasına, ikincisi% 2 yuvasına gider ve böyle devam eder. Amaç, şartların/sözcüklerin/vb. Sırasının varsayılan ayarlarınızdan değişebileceği dillerle uğraşmaktır. Parametre sırasını çalışma zamanında değiştiremezsiniz, ancak parametrelerin dizgede doğru yerde bittiğinden emin olabilirsiniz. biçim dizesi değiştirdi

Örnek

NSLog(@"%[email protected], %[email protected]", @"Red", @"Blue"); 
NSLog(@"%[email protected], %[email protected]", @"Red", @"Blue"); 

Çıktı

Red, Blue 
Blue, Red 

Not ama parametreler aynı sırada bulunmaktadır.

+0

Görüyorum. Ama neden '$' işareti kullanıyoruz? –

+0

Bu harika, bunu hiç bilmiyordum! –

+0

$ pozisyonelin bir parçasıdır. Onları benim örneğimin dışında bıraktım. Bir çeşit yazım hatası. – Avi

İlgili konular