黑马程序员技术交流社区

标题: 各位大神帮帮忙,c语言函数和oc函数可有什么区别啊? [打印本页]

作者: 迎着太阳    时间: 2014-12-16 22:35
标题: 各位大神帮帮忙,c语言函数和oc函数可有什么区别啊?
今天看到这的时候卡住了,求指教。

作者: lnyg1992    时间: 2014-12-17 10:06
c面向过程,OC面向对象
作者: 邹志鹏    时间: 2014-12-17 11:00
oc函数?你想问的是OC方法跟C语言函数的区别吧
函数是整个文件共享的,可以写在任意位置,除了@interface和@end之间,调用不依赖对象
方法要声明和实现在指定位置,并且调用依赖于对象或类

作者: 迎着太阳    时间: 2014-12-17 11:27
邹志鹏 发表于 2014-12-17 11:00
oc函数?你想问的是OC方法跟C语言函数的区别吧
函数是整个文件共享的,可以写在任意位置,除了@interface和 ...

oc里的函数都是c语言函数吗?
作者: 邹志鹏    时间: 2014-12-17 12:02
迎着太阳 发表于 2014-12-17 11:27
oc里的函数都是c语言函数吗?

目前OC我接触到的就是这样咯
作者: 迎着太阳    时间: 2014-12-17 12:10
邹志鹏 发表于 2014-12-17 12:02
目前OC我接触到的就是这样咯

谢谢你的回答啊,:)
作者: zsling    时间: 2014-12-17 12:29
我看到的也是OC函数中的语法书写跟C一样,只是输出NSLog不一样,其他类似
作者: se7ven    时间: 2014-12-18 01:22
其实不能说一样或者不一样,OC只是在C的基础上加了一层薄薄的面相对象思想,里面多了封装、继承和多态等特性。
1>从思维逻辑上讲,
    C是面向过程,OC是面向对象,(楼上有说)
2>从代码上来说
    *引入的头文件不一样,C是#include <stdio.h> ,OC是#import <Foundation/Foundation.h>
    *打印用的函数不一样,C—printf("XX\n");,OC-NSLog(@"XX");(后者自动换行)
    *打印字符串占位符不一样,C-%s,,,OC-%@
    *函数和方法,其实方法和函数没有什么不一样,你可以两者不同,但是你也可以这么理解,函数在C里叫函数,在OC里叫方法,,(这个不需要纠结)
    *()小括号的不同:C-()里面是参数类型和参数,OC-()里面只是类型,不会再有参数
    *:冒号,C里面我记不得有什么冒号了,但是OC里,冒号有一个是表示继承,有一个是方法名的一部分,后面跟参数,
    * [],中括号,C-里面[]主要是用在数组里的长度,,OC-[]大部分看见的是调用方法了。
    ……。。。。。。。。
有点困了,先给你总结到这,睡了哈,,改天想到了再跟你说,,,
作者: 迎着太阳    时间: 2014-12-18 10:10
se7ven 发表于 2014-12-18 01:22
其实不能说一样或者不一样,OC只是在C的基础上加了一层薄薄的面相对象思想,里面多了封装、继承和多态等特 ...

太好了,你总结的真详细,受益匪浅哪,非常感谢。
作者: se7ven    时间: 2014-12-18 11:51
迎着太阳 发表于 2014-12-18 10:10
太好了,你总结的真详细,受益匪浅哪,非常感谢。

呵呵,,谢谢夸奖一起学习哈
作者: wx_hg1q2t6v    时间: 2014-12-18 13:26
se7ven 发表于 2014-12-18 01:22
其实不能说一样或者不一样,OC只是在C的基础上加了一层薄薄的面相对象思想,里面多了封装、继承和多态等特 ...

笔记做的真好!
作者: se7ven    时间: 2014-12-18 13:50
wx_hg1q2t6v 发表于 2014-12-18 13:26
笔记做的真好!

可是好像我回答错了,人家问的C函数和OC函数
呵呵,,这不是我做的笔记,临时写的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2