------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
IOS开发中常用的有OC和swift,其中OC是可以兼容C语言的,所以通过比较C与OC的差异,可以帮助我们更好的去学习OC语言。
区别:
1.文件后缀的差异
C语言中文件的后缀有.c(源文件) .o(目标文件) .out(可执行文件) .h(头文件)。
OC中的后缀有.c(C语言源文件) .cpp.cc(C++源文件) .m (OC源文件) .mm(OC++源文件) .h(头文件)
2.语法上的差异
C语言和OC语法上很多相似的地方,但是又有区别
1)数据类型
C语言中有五大数据类型:基本类型,构造类型,指针类型,空类型,定义类型。
而OC中基础类型包含了C的基础类型,同时又增加了布尔类型,增加了BLOCK类型。
在指针数据类型中,增加了class数据类型,和ID类型。以及特殊类型中的SEL,nil 类型。
2)关键字
C语言中大概有30多个关键字,比如int char float double break sizeof 等
而OC 中的关键字大部分是以@符号开头的,比如@interface @implementation @required @encode @end等。
3)流程控制
OC中除了C中的流程控制之外,还增加了新的for循环,可以更加方便的遍历数组中的元素。如果我们熟悉其他语言的话可以很好的理解,比如C#或者Java中的foreach。
4)函数声明和定义
C语言中函数的声明和定义:比如 int sum(int x,int y)
OC中方法的定义:比如 -(int) max: int x andY: (int) y
5)异常处理
OC中增加了捕捉异常处理的方法,也就是大家熟悉的 @try @catch @finally 。