OC部分基础语法总结(一)
从OC的Hello world入手
- #import <Foundation/Foundation.h>
- int main(int argc, const char * argv[]) {
- @autoreleasepool {
- NSLog(@"Hello world");
- }
- return 0;
- }
复制代码
首先C中的是使用#include,而为什么到了OC中却使用#import呢?
include和import都是引入头文件
include需要使用预处理指令防止重复包含,如果没有写则无法防止重复包含
import引入的头文件可以防止重复包含、
NSLog打印输出
NSLog是cocoa的框架中提供的一个方法
NSLog定义在NSObjCRuntime.h中,而引入Foundation.h头文件就相当于引入了Foundation框架中的所有头文件,包含NSObjCRuntime头文件
NSLog与printf使用的差异
1、NSLog 会自动换行,而printf不会自动换行
2、NSLog 会自动输出时间等项目信息,printf不会
3、NSLog 函数的参数是一个NSString 对象
printf是一个字符串常量指针
NSLog格式化输出的问题
同c语言一样可以格式化输出,OC向下兼容C语言,所以可以在oc中使用C语言
NSLog输出字符串与C语言不同,oc中有自己特有的字符串表示方法
NSString *str = @“fhjkada”;
NSLog(@"%@",str);
不能用printf打印NSString, NSString是OC特有的,C不支持
@符号的使用
在OC中“@”有特殊用法
1)@"" 表示将一个C的字符串转化为OC中的字符串对象NSString
2)@标识符 OC中大部分关键字都是以@开头的
|
|