0

Q1。NSDate *now = [NSDate 日期];
NSLog(@"当前日期:%@",now);

显示的时间比系统时间早 4 小时。我想知道为什么会这样,我该如何纠正它?

Q2.. 在 C/C++ 中,字符串被视为字符数组。在 Objective-C 中也是这样吗?

4

2 回答 2

3
NSDate *now = [NSDate date];
NSLog(@"Current date:%@",now); 

是“现在”而不是“日期”。

于 2012-07-29T01:24:42.827 回答
1

A1:NSLog(@"%@", now)实际上与 相同NSLog(@"%@", [now description])。NSDate 对象不关心时区是什么,因此它的description方法只会为您提供 UTC 时间。如果您需要使用正确的时区和语言环境进行格式化,则需要先使用 NSDateFormatter 对象将其转换为格式良好的字符串。

A2:有也没有,但大多没有。你可以这样做:

char *cString = "I am a C string";

创建一个 C 字符串,您可以像在 C 中一样对待它。不过,这在 Objective-C 中很少见,除非绝对必要。使用字符串的“正常”方式是使用 NSString 或 NSMutableString 的实例,它们是成熟的对象:

NSString *normalString = @"I'm above all that.";(注意@符号)

于 2012-07-29T03:17:59.863 回答