형식이 문자열 리터럴이 아니며 형식 인수가 없습니다. 컴파일 오류가 발생했습니다.형식이 문자열 리터럴이 아니며 형식 인수가 없습니다.
여기에 내 코드 내가있는 NSMutableArray를 추가하기 위해 노력하고있어
입니다.
for (int i=0; i<feed.count; i++) {
[html appendFormat:[self.itemName objectAtIndex:i]]; }
누군가 나를 도와 줄 수 있습니까?
형식이 문자열 리터럴이 아니며 형식 인수가 없습니다. 컴파일 오류가 발생했습니다.형식이 문자열 리터럴이 아니며 형식 인수가 없습니다.
여기에 내 코드 내가있는 NSMutableArray를 추가하기 위해 노력하고있어
입니다.
for (int i=0; i<feed.count; i++) {
[html appendFormat:[self.itemName objectAtIndex:i]]; }
누군가 나를 도와 줄 수 있습니까?
appendFormat : 메소드에는 첫 번째 매개 변수로 문자열이 필요합니다. 객체가 직접하지
[html appendString:[[self.itemName objectAtIndex:i] description]];
나는 경우에 description
메시지를 추가 : 당신이 직접 문자열을 추가 할 수
[html appendFormat:@"%@", [self.itemName objectAtIndex:i]];
비록 :
그래서 보내는 당신의 선택은 뭔가를해야합니다 문자열, 흥분되는 것.
변수를 형식 문자열로 사용하여 -appendFormat:
을 호출하려고합니다. 형식 지정자 (기본적으로 "%"
다음에 다른 문자가 오는 순서)가 있으면 -appendFormat:
은 제공하지 않은 varargs의 다음 인수를 읽으므로 결과적으로 매우 나쁜 생각입니다. 스택에서 가비지 메모리를 읽고 삽입하려고합니다. 기껏해야, 이것은 충돌이 될 것입니다. 최악의 경우 보안 공격에 사용되는 벡터입니다.
대신 -appendString:
을 사용해야합니다.
참고로 [self.itemName objectAtIndex:i]
은 NSString*
입니다. 다른 항목 인 경우 설명 대신 해당 설명을 추가 할 수 있습니다. [html appendFormat:@"%@", [self.itemName objectAtIndex:i]]
이거나 정확한 유형에 따라 다른 것을 추가 할 수 있습니다.
지적 해 주셔서 감사합니다. 나는 그 옵션을 시도 할 것이다. – HardCode
이 코드는 무엇을하기로되어 있습니까? -[NSMutableString appendFormat:]
은 @"The %@ says %@"
과 같이 format string을 취하고 나머지 인수로 "공백을 채 웁니다."
거의 사용되지 않는 형식 지정자 중 일부는 프로그램의 정보를 공개하거나 프로그램을 크래시 (예 : uncontrolled format string attack) 할 수 있다는 점에서 위험합니다. 이 때문에
(및 형식 문자열이 변수의 정보를 조립하기위한 것입니다 때문에), 당신은 항상은 형식 문자열 자체가 아닌 변수 또는 배열에서, 리터럴 문자열되고 싶어요. 그냥 대신 appendString:
를 사용할 수
for (int i=0; i<feed.count; i++) {
[html appendFormat: @"%@", [self.itemName objectAtIndex:i]]; }
을 또는 :
for (int i=0; i<feed.count; i++) {
[html appendString:[self.itemName objectAtIndex:i]]; }
하지 자세한 내용은없이
그래서, 당신은이 같은
appendFormat:
을 사용할 수 있습니다. 'feed'는 어떤 타입입니까? 'html'은 어떤 타입입니까? 'itemName'은 어떤 타입이고 객체는 어떤 타입입니까? 우리가하는 일을 이해하기 시작하는 데 필요한 모든 세부 사항을 알려주십시오. – PengOne@ PengOne : 그 유형이 꽤 분명하다고 생각합니다.'feed'는 어떤 종류의 콜렉션 (NSArray) 일 가능성이 높으며, html은 NSMutableString이고, itemName은 콜렉션의 일종 인 NSArray입니다. –
@ Kevin : "NSMutableArray를 추가하려고합니다."라는 문구는이 점을 명확히하지 않습니다. 게다가,이 정보를 철자하는 것이 좋은 습관입니다 (그리고 OP가이 작업을 해본 결과 아마도 자신의 질문에 대답 할 수 있었을 것입니다). – PengOne