C语言及OC语言初期学习心得

2015-7-22,周三

经过一个星期C语言的学习,对基础知识语法已经有了一定的了解和认识。同时通过这三天对OC语言的学习,更加了解编程语言都是相融相通的。虽然 OC语言的语法和之前接触的C,JAVA有很大的区别,但是在讲师的解析和引导下,还是比较容易接受的。

学习知识的过程不仅仅是对知识的认识,简单的认识是远远不够的。为了今后更好的开发,要对学过的知识加以理解、辨析,通过代码去实现,加深认知。

以下是我在这段时间在学习的心得和总结。

一、数组的四种遍历方法:

根本两种方法

·1)指针

·2)数组游标

具体实现如下,21~24 ,共四种

二、函数指针

强调“指针”的作用

三、自增自减 和 指针 组合使用

打印结果

【重点】延伸

·1)自增、自减 和 指针 的组合使用

·2)关于 数组a 的地址

四、数组 和 链表

数组的优缺点:

·优点:数组是连续的,查找起来快捷方便

·缺点:数组的插入和删除十分麻烦

链表的优缺点:

链表每个节点存储两个数组,一个是存储的数据,另一个是下一跳的目标地址

·优点:链表插入和删除方便

·缺点:遍历效率相对数组低

五、关于数组地址 +1

例如,对 &a + 1 相当于 对  a 的地址上 + ( sizeof(a) * sizeof(int) )  —> +( 6 * 4)

即对 a 的地址加上一个 数组a 所占用的空间长度

零、结构体、枚举

一、作用域 —【 { } 】

即 { }

名字的 作用域 是指 在程序中可以使用该名字的部分

简而言之:在 { } 内声明的通常只能在 { } 内使用。

(若在其他地方用 extern 再次声明也可使用)

二、各种 变量 的特点和区别

1.自动变量 —【auto】

2.静态变量 — 【static】

静态变量,保留上一次值。

静态变量的生命周期和引用程序绑定。

静态变量写在函数内或者函数外,他的生命周期并没有受到作用域的限制。

如果卸载函数的外面,其他的函数也可以使用这个变量。如果写在函数里面,只能在对应的函数中使用

存储区域: 静态存储区。

3.局部变量

4.全局变量

全局变量可以多次声明(用extern),表示同一个变量,但是不能多次定义

5.静态全局变量

三、结构体 — 【struct】

1.概念

定义一个结构体,只是说明了该类型的组成情况,并没有给它分配存储空间

结构体占用的内存空间是其成员所占内存之和,而且各成员在内存中按定义的顺序依次排列

2.定义

1)定义方式【3种】

【易错】·定义的类型名,首字母必须大写

·结构体{ };大括号结尾必须有 “ ; ”

2)嵌套定义,但是不能对自身进行递归调用

3.初始化 及 使用

不可用 42 行的方式进行初始化(注意区别数组的初始化)

“ . ” 是运算符

四、结构体指针

1.因为每个结构体变量都有自己的存储空间和地址,因此指针可以指向结构体变量

2.结构体指针使用的方式【3种】

【重点】第三种方式 — 26行

printf(“name is %s\n”, p -> name);

五、枚举 — 【enum】

1.枚举就是用来定义一系列类型的

2.枚举值其实就是数值,枚举值默认是从 0 开始的,然后依次在上一个值的基础上累加

3.定义方式【3种】

参照结构体的 3 种定义方式(类似)

六、typedef

1.使用 typedef 关键字为各种已知数据类型定义一个新的名字(别名)

【易错】首字母必须大写

【易错】

1.定义结构体的结尾必须加 ;

2.结构体,枚举  字母必须大写

3. typedef  和 define 之间的区别

OC语言

二、OC 和 C 的一些区别

1.导入头文件

·C:  使用  #include <stdio.h> 导入头文件

·OC: 使用  #import <Foundation/Foundation.h> 导入头文件

其中 Foundation 中包含 C 的头文件

2.字符串

·在OC中使用%@格式化,打印一个字符串对象

三、类和对象的区别

类是对象的类型

不同于 int 等基本类型, 类这种类型具有方法

四、属性声明【3种】

1)public: 公共的,所有类都可以使用

2)protected: 受保护的,定义的类及其子类可以使用

3)private: 私有的,只能在定义的类中使用

五、定义类的步骤

1)定义类名

2)编写类的属性—> 实例变量

3)编写类的方法—> 方法

------------------------------------------------------------------------------

时间: 2025-01-20 04:43:49

C语言及OC语言初期学习心得的相关文章

IOS-2-C语言和Objective-C语言衔接学习资料

前言:在IOS学习中,一般会先学习一周的C语言,两周的Objective-C语言,这是今后开发的最基础最重要的部分,下面给大家分享一下培训课上的精简资料: C语言和Objective-C语言衔接学习资料,PPT格式,简单易懂,可迅速掌握. 资料链接: C语言:http://download.csdn.net/detail/iot_li/8951557 Objective-C语言:http://download.csdn.net/detail/iot_li/8944225 版权声明:本文为博主原创

oc基础第一天---c语言和oc语言的对比

/* 1. OC程序的编译. 它的编译.连接.执行和C程序是相差无几的. 1). 在.m文件中写上符合OC语法规范的源代码. 2). 使用 cc -c 指令来编译我们的文件. a. 预处理. b. 检查语法 c. 生成.o的目标文件. 3). 链接 cc xx.o a. 添加启动代码. b. 链接函数. 将要调用的函数的实现拷贝进来 在代码中如果使用到了框架中的功能  就必须要指定系统到那1个框架中去找. cc main.o -framework Foundation 4). 链接完毕之后 会生

C语言程序设计学习心得

一,思维导图 二,语法认识 1,if-else的用法 if (条件一) { 语句一; } else { 语句二; } 问题:else与if的匹配关系不明确,导致程序异常. 解决方法:牢记else与离其最近的一个if配对,不与其他的if连用,并规范代码书写格式,使其看起来跟加清晰明了. 2,while语句的用法 while (循环条件) { 循环语句; } 注意事项:while比较好用,基本上所有的循环结构都能用while写. 3,for语句的用法 for(表达式1; 表达式2; 表达式3) {

ios学习笔记图片+图片解释(c语言 oc语言 ios控件 ios小项目 ios小功能 swift都有而且笔记完整喔)

下面是目录其中ios文件夹包括了大部分ios控件的介绍和演示,swift的时完整版,可以学习完swift(这个看的是swift刚出来一周的视频截图,可能有点赶,但是完整),c语言和oc语言的也可以完整的学习完所需知识,,其他文件夹的内容如其名说描述一样 没张图片都有文字说明,可以需要该功能的时候搜索一下然后打开图片就可以学习到 网盘下载地址:需要的话给留言我再传上去 http://www.cnblogs.com/langtianya原创 ios学习笔记图片+图片解释(c语言 oc语言 ios控件

iOS新的旅程之Swift语言的学习

好久都没有来这个熟悉而又陌生的地方啦, 想想已经有两三个月了吧,不过我相信以后还是会经常来的啦,因为忙碌的学习已经过去啦,剩下的就是要好好的总结好好的复习了,好好的熟悉下我们之前学习的知识点,将他们有条理的串联起来. 在之前的将近三个月里面,不管是忙碌还是怎么样吧, 也许在有些人看来这是非人的生活,但是内个人都有自己的过法吧,面对自己从未接触过的代码和语法,刚开始确实是有那么一点点的害怕,但是慢慢的就没有那种感觉了,渐渐的也发现其实敲代码并没有那么的可怕,也没有那么的难.经过三个月与代码的磨合我

iOS之Swift语言的学习

好久都没有来这个熟悉而又陌生的地方啦, 想想已经有两三个月了吧,不过我相信以后还是会经常来的啦,因为忙碌的学习已经过去啦,剩下的就是要好好的总结好好的复习了,好好的熟悉下我们之前学习的知识点,将他们有条理的串联起来. 在之前的将近三个月里面,不管是忙碌还是怎么样吧, 也许在有些人看来这是非人的生活,但是内个人都有自己的过法吧,面对自己从未接触过的代码和语法,刚开始确实是有那么一点点的害怕,但是慢慢的就没有那种感觉了,渐渐的也发现其实敲代码并没有那么的可怕,也没有那么的难.经过三个月与代码的磨合我

黑马程序员——oc语言学习心得—— 属性声明和赋值

黑马程序员——oc语言学习心得—— 属性声明和赋值 -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 1,在oc中所有类继承与终极父类Object2,声明字符变量采用N是string  *_xxx 实例变量一般以下划线开头3,在oc中方法以+ -号区分 -号开头是实例方法或对象方法  +号开头是类方法  前置用对象调用 后者用类名调用4,在xcode4以后声明@property 不用在写@snysize  自动生成get.set方法5,属性

黑马程序员—oc语言学习心得—block

黑马程序员—oc语言学习心得—block -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 1,程序一般用typedef定义一个block类型 然后调用 typedef void(^xxx)(); 可使用助记符 inlineblock 2,Block内部可以访问外部变量:默认情况下,Block内部不能修改外部的局部变量 给局部变量加上__block关键字,则这个局部变量可以在block内部进行修改. 3,block的作用: 利用block封

黑马程序员——oc语言学习心得----NSFileManager

黑马程序员——oc语言学习心得----NSFileManager -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 自己总结了下NSFileManager的简单几个用法 : // 首先要创建文件管理器 NSFileManager *fm=[NSFileManager defaultManager]; 1,判断文件是否存在 fileExistsAtPath: 2,判断文件是否是目录 fileExistsAtPath: 3, 判断文件是否可读