2011-09-19 11 views
6

उदाहरण के लिए मैं एक चार सारणी रखने के लिए चार सरणी को बदलने के लिए:कैसे NSString

char array[8]; 

मैं करने की कोशिश की:

NSString *marketPacket = [NSString stringWithCString:array encoding:NSASCIIStringEncoding]; 
NSLog(@"%@",marketPacket); 

लेकिन प्रदर्शित करता है भ्रष्ट पात्रों

+1

किसी और के लिए यहां आने और उत्तर से उलझन में आने के लिए: ओपी के पास इस प्रश्न के मूल संस्करण में 'मार्केट पैकेट' से पहले नहीं था, लेकिन इसे बाद में पूरे प्रश्न को व्यर्थ बना दिया। – colincameron

+1

इसके अलावा, यह "एआरस्ट्रिंग से चार सरणी" के लिए पहला Google परिणाम है – colincameron

+0

कोई विचार नहीं कि यह क्यों बंद था। बहुत स्थानीयकृत? –

उत्तर

0

को बदलें NSString *marketPacket

आपको वास्तव में एक कंपाइलर त्रुटि देनी चाहिए थी। अजीब। कम से कम, मानते हुए कि आपने कोड कॉपी और पेस्ट किया है, आपको एनएसएसटींग के लिए एक पॉइंटर चाहिए (क्योंकि यह एक प्रबंधित ऑब्जेक्ट है)।

12
char array[5] = {'a', 'b', 'c', 'd', '\0'}; 
NSString *marketPacket = [NSString stringWithCString:array encoding:NSASCIIStringEncoding]; 

NSLog(@"%@", marketPacket); 

NSString एक वर्ग है और आप इसे का एक उदाहरण बनाने के लिए, ताकि आप एक * पर रखना होगा। यदि आप कोई सरणी बनाते हैं, तो बस कुछ देखने के लिए इसे पॉप्युलेट करें ..