01-C语言概述

一、 学前提醒

1. 其实iOS开发就是开发iPhone\iPad上的软件,而要想开发一款软件,首先要学习程序设计语言

2. iOS开发需要学习的主要程序设计语言有:C语言、C++、Objective-C,其中C++、Objective-C都是以C语言为基础,从C语言衍生出来的。因此,C语言是开发iOS软件的基础。

3. 从现在开始,沉下心来学习传说中的C语言,学习它的语法

4. 正式学习之前,先提醒一句:学习一门语言的语法是比较枯燥的事,很像是在学习1+1等于几,不可能在学习C语言语法过程中就能马上做出一些好看的iPhone软件界面效果

5. 大家要沉得住气,所谓苦尽甘来,没有语法的积累,如何能编写出好看的界面呢?

一、 学前提醒

1. 其实iOS开发就是开发iPhone\iPad上的软件,而要想开发一款软件,首先要学习程序设计语言

2. iOS开发需要学习的主要程序设计语言有:C语言、C++、Objective-C,其中C++、Objective-C都是以C语言为基础,从C语言衍生出来的。因此,C语言是开发iOS软件的基础。

3. 从现在开始,沉下心来学习传说中的C语言,学习它的语法

4. 正式学习之前,先提醒一句:学习一门语言的语法是比较枯燥的事,很像是在学习1+1等于几,不可能在学习C语言语法过程中就能马上做出一些好看的iPhone软件界面效果

5. 大家要沉得住气,所谓苦尽甘来,没有语法的积累,如何能编写出好看的界面呢?

二、 计算机和软件常识

1、计算机运行原理

1) 硬件基本组成:硬盘、内存、CPU

2) 各个部件之间的运作协调(右图)

2. 计算机只能识别0和1

1) 0和1组成的指令

2) 0和1组成的数据

3. 计算机和软件的联系

1) 软件的基本概念:指令的集合

2) 软件的安装运行过程

u 安装在硬盘

u 运行在内存

3) 为什么要开发软件:写出能控制计算机的指令

4. 计算机语言

1) 一门跟计算机打交道的语言

2) 方便写出一连串的指令

三、 计算机语言发展史

1. 机器语言

1) 简介:所有代码里面只有0和1,每一条指令称为“机器指令”

2) 优点

u 代码能被计算机直接识别,直接对硬件产生作用,程序的执行效率非常高

u 能直接访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等

3) 缺点

u 程序全是些0和1的指令代码,可读性差,还容易出错

u 对硬件的依赖性很强,因此不同型号计算机的机器语言又不一样。也就是说,如果2台不同型号的机器想实现一样的功能,需要编写2套完全不同的代码

u 要熟记所用计算机的全部指令和指令的涵义,指令又多又难记

4) 使用场合

综上所述,机器语言很难掌握和推广,现在除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言了

2. 汇编语言

1) 简介:用英文单词等符号代替机器指令

2) 优点

u 像机器语言一样,可以直接访问、控制计算机的各种硬件设备

u 占用内存少,执行速度快

3) 缺点

u 不同的机器有不同的汇编语言语法和编译器,代码缺乏可移植性,也就是说,一个程序只能在一种机器上运行,换到其他机器上就不能运行

u 符号非常多、难记,即使是完成简单的功能也需要大量的汇编语言代码,很容易产生BUG,难于调试

u 必须对硬件非常了解,开发效率很低,周期长且单调

4) 使用场合

u 操作系统内核、驱动程序、单片机程序

u 软件的加密、解密、破解

u 病毒的制作、防治

u 程序的调试、分析

3. 高级语言

1) 简介:接近自然语言

2) 优点

u 简单、易用、易于理解,语法和结构类似于普通英文

u 远离对硬件的直接操作,使得一般人经过学习之后都可以编程,而不用太熟悉硬件知识

u 一个程序还可以在不同的机器上运行,具有可移植性

3) 缺点

u 程序不能直接被计算机识别,需要经编译器翻译成二进制指令后,才能运行到计算机上

4) 种类:C语言、C++、C#、Java、Objective-C等

4. 三种语言的对比

分别用机器语言、汇编语言、C语言(高级语言)来写一个计算1+1的程序

1) 机器语言:简直是天书!!!

10111000 00000001

00000000 00000101

00000001 00000000

2) 汇编语言:可读性稍微好一点,但是麻烦

MOV AX,1

ADD AX,1

3) C语言:精简、通俗易懂

1+1

四、 C语言简介

1. 先学习C语言的原因

1) OC基于C

2) OC跟C的思想和语法很多地方不太一样,而且OC能和C混用

3) C是所有编程语言中的经典,很多高级语言都是从C语言中衍生出来的,比如C++、C#、Objective-C等

2. 简史

1) C语言于1972年发明,首次使用是用于重写UINX操作系统(UNIX以前主要是用汇编语言写的,它奠定了操作系统的基础)

2) 随着UNIX操作系统的成功,C语言也得到了大幅度地推广,被先后使用到大、中、小、微型主机上,至今还是世界上最流行、使用最广泛的高级程序设计语言之一

3) C语言是一门面向过程的语言,非面向对象的语言

3. 特点

1) 丰富的运算符

2) 丰富的数据类型

3) 可以直接操作硬件

4) 高效的目标代码

5) 可移植性好

4. 主要用途

1) 编写系统软件、图形处理、单片机程序、嵌入式系统开发

2) 编写游戏外挂

3) 编写android程序

4) 编写iOS程序

……

5. 版本问题

1) 1983年美国国家标准局(American National Standards Institute,简称ANSI)成立了一个委员会,开始制定C语言标准的工作

2) 1989年C语言标准被批准,这个版本的C语言标准通常被称为ANSI C

3) 1999年,国际标准化组织ISO又对C语言标准进行修订,在基本保留原来C语言特征的基础上,针对应该的需要,增加了一些功能,命名为C99

4) 2011年12月8日,ISO正式公布C语言新的国际标准草案:C11

时间: 2024-12-15 01:32:41

01-C语言概述的相关文章

JavaScript权威指南第01章 JavaScript 概述

JavaScript 概述 html +css +JavaScript = 网页三大利器 特点: 健壮性 高效性 通用性 1.JavaScript  语言核心 2.客户端JavaScript JavaScript权威指南第01章 JavaScript 概述

JavaSE学习总结第01天_Java概述

01.01 计算机概述 计算机(Computer):全称电子计算机,俗称电脑. 是一种能够按照程序运行,自动.高速处理海量数据的现代化智能电子设备. 由硬件和软件所组成,没有安装任何软件的计算机称为裸机. 常见的形式有台式计算机.笔记本计算机.大型计算机等. 01.02 计算机硬件和软件概述 计算机硬件(Computer Hardware)是指计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称. 这些物理装置按系统结构的要求构成一个有机整体为计算机软件运行提供物质基础. 计算机通常由C

黑马程序员_JavaSE学习总结第01天_Java概述

------- android培训.java培训.期待与您交流! ----------  01.01 计算机概述 计算机(Computer):全称电子计算机,俗称电脑. 是一种能够按照程序运行,自动.高速处理海量数据的现代化智能电子设备. 由硬件和软件所组成,没有安装任何软件的计算机称为裸机. 常见的形式有台式计算机.笔记本计算机.大型计算机等. 01.02 计算机硬件和软件概述 计算机硬件(Computer Hardware)是指计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称.

算法数据结构01 /算法数据结构概述

目录 算法数据结构01 /算法数据结构概述 1. 算法 2. 评判程序优劣的方法 3. 时间复杂度 4. 数据结构 5. python数据结构性能分析 6. 总结 算法数据结构01 /算法数据结构概述 1. 算法 算法概述 算法是计算机处理信息的本质,因为计算机程序本质上是一个算法来告诉计算机确切的步骤来执行一个指定的任务.一般地,当算法在处理信息时,会从输入设备或数据的存储地址读取数据,把结果写入输出设备或某个存储地址供以后再调用. 算法是独立存在的一种解决问题的方法和思想. 对于算法而言,实

java语言概述

a语言概述  Java之父是谁?你造吗?  常见的JDK版本:  JDK1.4.2  JDK5  JDK7 (2)Java语言的特点  有很多小特点,重点有两个开源,跨平台 (3)Java语言是跨平台的  针对不同的操作系统,依靠不同的jvm来实现的. (4)Java语言的平台se,me,ee b:JDK,JRE,JVM的作用及关系(掌握) (1)作用  JVM:保证Java语言跨平台  JRE:Java程序的运行环境  JDK:Java程序的开发环境 (2)关系  JDK:JRE+工具  JR

第一章:C语言概述及如何上机运行C程序

第一章:C语言概述及如何上机运行C程序 让编程改变世界 Change the world by program C语言概述 C语言的发展过程 C语言是在 70 年代初问世的.一九七八年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言.同时由B.W.Kernighan和D.M.Ritchit合著了著名的“THE C PROGRAMMING LANGUAGE”一书.通常简称为<K&R>,也有人称之为<K&R>标准.但是,在<K&R>中

C语言概述

[C语言]C语言概述 本文文件夹 为什么iOS开发要先学C语言? 一.C语言简史 二.C语言的特点 三.C语言能做什么? 四.C语言的版本号问题 说明:这个C语言专题,是学习iOS开发的前奏. 也为了让有面向对象语言开发经验的程序猿,可以高速上手C语言.假设你还没有编程经验,或者对C语言.iOS开发不感兴趣.请忽略 为什么iOS开发要先学C语言? iOS开发的核心语言是Objective-C,Objective-C是在C语言的基础加了一层面向对象的语法. 为了能够更好地掌握Objective-C

OC语言概述

1.OC语言概述 1>Foundation.h我们称之为主头文件, 主头文件中又拷贝了该工具箱中所有工具的头文件, 我们只需要导入主头文件就可以使用该工具箱中所有的工具, 避免了每次使用都要导入一个对应的头文件 工具箱的地址: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks 规律: 所有的主头文件

[JAVA_开课吧资源]第一周 Java语言概述、Java语言基础

主题一 Java语言概述 » JDK介绍及其基本组件 Sun公司利用Java开发工具箱(Java Development Toolkit ,JDK)发布Java的各个版本.JDK由开发和测试Java程序的独立程序集组成,它们都从命令行调用. [请点击查看更多内容 转自51CTO.com] » 使用CMD开发运行Java程序 代码文件的拓展名必须为.java,并且文件名应该与类的类名完全相同.编译一个程序是指使用编译器将源代码翻译成java字节码.下面的命令用来编译源代码文件welcome.jav

1-学习前言&amp;C语言概述

[C语言]01-学习前言&C语言概述 参考自 http://www.cnblogs.com/mjios/archive/2013/03/12/2956508.html#label2 C语言是我去年学的,学的还好吧,但是过了一个假期,感觉很多东西都忘了,说实说,我无法接受这个事实!这多少与去年没有接解一些网络笔记OneNote还有博客有关系,所以我决定花1~2个星期系统的复习整理一下. ----2016/11/5 一.C语言的特点 1.丰富的运算符 计算机的基本功能就是计算,因此一门程序设计语言的