NSString *myString =@"";
NSString *test = [myString stringByAppendingString:sadgan[1]];
NSLog(@"% ? " ,test);
我想写yeksad o devist o sisad o ...
答案 0 :(得分:1)
将C Sting转换为NSString:
NSString *myNSString = [NSString stringWithUTF8String:cString];
然后追加。
答案 1 :(得分:1)
char*
和NSString
不会自动相互转换。如果您使用Objective-C,请使用NSString
,除非您使用的某些库强制您使用。 "abc"
是char*
,@"abc"
是NSString
。
NSArray* sagdan=[NSArray arrayWithObjects:@"yeksad",@"devist",@"sisad",@"chaharsad",@"pansad",nil];
NSString *test = [myString stringByAppendingString:[sagdan objectAtIndex:4]];
将完成这项工作。
顺便问一下,你用的语言是什么? dev for 2,chahar for 4 and pan for 5 sound in indo-European language ...
答案 2 :(得分:0)
Objective-C的偏离主题,但C:
的主题 * sadgan [4] = {“yeksad”,“devist”,“sisad”,“chaharsad”,“pansad”};我不懂这种语言,但我无能为力:1:yeksad,2:devist,3:sisad,4:chaharsad,5:pansad。您认为哪一个会被数组下移,能够容纳4个值?
问候
答案 3 :(得分:0)
@ objective感兴趣的人:
在c:
const char * array_1[4]={"one","two","tree","four","five"};
printf("%s",array_1[4]) //output= five
在objective_c中的:`
NSString *mystring=@"";
NSArray* array_1=[NSArray arrayWithObjects:@"one",@"two",@"tree",@"four",@"five",nil];
NSString *test = [mystring stringByAppendingString:[array_1 objectAtIndex:4]];
NSLog(@"%@",test); //output =five
答案 4 :(得分:0)
@aden:当然,数组数据放在堆中。这是以通常的方式完成的,所以你可以接受它。但它不安全:它取决于方式,编译器实际上处理这些事情。并且:如果数组不在堆上怎么办?也许在堆栈上?是的,在大多数情况下,这将是一个坏主意,但它仍然是一个想法。
一个真正糟糕的想法是认为“这只是工作,所以不要担心”。不要做出不必要的假设。
问候
答案 5 :(得分:0)
@aden:“为什么?在c数组范围内是(0 .. 4)= 5“ - 看起来你应该先在C中学到一些课程吗? something array[value];
正在保留内存空间。 值的空间“某事”。你只知道,索引从0开始。所以试试看:如果第一个元素被称为0,那么如果有 value 元素,那么最后一个元素的索引是什么?
问候