#objective-c
#objective-c
Вопрос:
Я получаю ошибки в этом фрагменте кода; Я разместил сообщения об ошибках в комментариях. Не могу понять это.
Заранее спасибо.
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
@autoreleasepool {
NSMutableString *str = [[NSMutableString alloc]init];
for (int i = 0; i < 10; i ) {
[str appendString:@"Aaron is cool!n"];
}
// Declare a pointer to an NSError object, but don't instantiate it.
// The NSError instance will only be created if there is, in fact, an error.
NSError *error = nil;
// Pass the error pointer by reference to the NSString method
BOOL success =[str writeToFile:@"/tmp/cool.txt"; // Expected "]"
atomically:YES // Bad receiver type 'int'
encoding:NSUTF8StringEncoding
error:amp;error];
// Test the returned BOOL, and query the NSError if the write failed
if (success) {
NSLog(@"done writing /tmp/cool.txt");
} else {
NSLog(@"writing /tmp/cool/txt failed:@", error localizedDescription); // Expected ')'
}
}
return 0;
}
Ответ №1:
Если в вашем коде нет опечаток, это проблема
// Pass the error pointer by reference to the NSString method
BOOL success =[str writeToFile:@"/tmp/cool.txt"; // Expected "]"
atomically:YES // Bad receiver type 'int'
encoding:NSUTF8StringEncoding
error:amp;error];
Удалите точку с запятой «;» отсюда.
BOOL success =[str writeToFile:@"/tmp/cool.txt"; // Expected "]"
Ответ №2:
попробуйте это:
@autoreleasepool {
NSMutableString *str = [[[NSMutableString alloc]init] autorelease];
for (int i = 0; i < 10; i ) {
[str appendString:@"Aaron is cool!n"];
}
NSError *error = nil;
BOOL success =[str writeToFile:@"/tmp/cool.txt"
atomically:YES
encoding:NSUTF8StringEncoding
error:amp;error];
if (success) {
NSLog(@"done writing /tmp/cool.txt");
} else {
NSLog(@"writing /tmp/cool/txt failed: %@", [error localizedDescription]);
}
}
return 0;