如果我编写以下函数,我会在第三行收到警告和错误。
int myYear (NSString *timevar)
{
if ([timevar isEqualToString:@"yr"]) {
return ...
}
}
Xcode 说
- 语义问题:函数'If'的隐式声明......
- 解析问题:预期为 ';' 表达后
我究竟做错了什么?
如果我编写以下函数,我会在第三行收到警告和错误。
int myYear (NSString *timevar)
{
if ([timevar isEqualToString:@"yr"]) {
return ...
}
}
Xcode 说
我究竟做错了什么?
这是因为ifis 关键字,Objective C 中的关键字区分大小写*。其他关键字也是如此,例如int.
// Use lowercase "i" in the "if"
if ([timevar isEqualToString:@"yr"]) {
return ...
}
if和If。
Objective-C 是区分大小写的语言,所有保留字必须小写,
语义问题:函数'If'的隐式声明......:
解析问题:预期';' 在表达式之后,
因为您编写If而不是if编译器假设您正在调用一个名为If. 因此它需要一个分号;。