C语言概述

【C语言】C语言概述

本文文件夹

说明:这个C语言专题,是学习iOS开发的前奏。

也为了让有面向对象语言开发经验的程序猿,可以高速上手C语言。假设你还没有编程经验,或者对C语言、iOS开发不感兴趣。请忽略

为什么iOS开发要先学C语言?

iOS开发的核心语言是Objective-C,Objective-C是在C语言的基础加了一层面向对象的语法。

为了能够更好地掌握Objective-C。我们能够先学习C语言,然后在C语言的基础上升华到Objective-C。当然。你也能够直接学习Objective-C,仅仅是我个人建议先学习C语言,再学习Objective-C,最后学习iOS开发,这样效果会好一点。

一、C语言简史

  • C语言于1972年发明,首次使用是用于重写UINX操作系统(UNIX曾经是用汇编写的)
  • 随着UNIX操作系统的成功。C语言也得到了大幅度地推广,至今还是世界上最流行、使用最广泛的高级程序设计语言之中的一个
  • C语言是一门面向过程的语言,非面向对象的语言

以下是2013年3月份的编程语言热门排行榜

从C语言诞生至今。它的热度一点也没减过,前两名基本上都是Java和C

二、C语言的特点

1.丰富的运算符

计算机的基本功能就是计算。因此一门程序设计语言的计算能力是很重要的。C语言提供了34种运算符,计算类型及其丰富。当中包含了最主要的加减乘除运算。

2.丰富的数据类型

C语言之所以生命力怎样强大,非常大一部分是由于它拥有丰富的数据类型。C语言的数据类型有:整型(int)、实型(float)、字符型(char)、数组类型(int [])、指针类型(void *)、结构体类型(struct)、共用体类型(union)等。众多数据类型中,最强大的是指针。通过指针我们能够直接訪问内存地址。

指针使用得当的话,不仅能够节省代码量。还能够优化内存管理、提高性能。因此。指针是一个非常重要的概念,必须重视。假设你说C语言中除了指针,其它都学得挺好的,那你干脆说你没学过C语言。

正由于C语言数据类型丰富。运算能力极强,因此非常多数据库都是用C语言编写的。比方DB2、Oracle等。

3.同意直接訪问物理地址,对硬件进行操作

因为C语言同意直接訪问物理地址,可以直接对硬件进行操作。因此它既具有高级语言的功能,又具有低级语言的很多功能,可以像汇编语言一样对位(bit)、字节和地址进行操作,而这三者是计算机最主要的工作单元。

4.高效率的目标代码

对照汇编语言,C语言可读性好,易于调试、改动和移植,代码质量与汇编语言相当。

5.可移植性好

在一个环境上用C语言编写的程序。不修改或稍加修改。就可移植到还有一个全然不同的环境中执行。

上面说的都算是C语言的长处。只是它肯定是有缺点的:

  • 因为C语言是面向过程的,因此它的数据封装性差、安全性低,这就是C语言和其它面向对象语言的差别之中的一个。

    面向对象语言的特性之中的一个就是数据的封装性
  • 语法限制不严格,对变量的类型约束不严格,对数组下标越界不作检查等

三、C语言能做什么?

  • 因为C语言具有强大的数据处理能力,并且同意直接訪问物理地址。直接对硬件操作。因此它适于编写系统软件、图形处理、单片机程序、嵌入式系统开发甚至是用于科研
  • 非常多操作系统的底层都是用C语言写的。比方android
  •  iOS开发中的核心语言是Objective-C(简称OC),OC是在C语言的基础上加了一层面向对象语法

    四、C语言的版本号问题

从UNIX操作系统的成功后,C语言得到了广泛地应用,从大型主机到小型微机,都有C语言活跃的身影。也衍生了非常多个版本号的C语言。长期以往。C语言将可能成为一门有多个变种、松散的语言。一门正式的语言,肯定要有个标准才行。不然就乱套了。为了改变这样的局面,1983年美国国家标准局(American
National Standards Institute,简称ANSI)成立了一个委员会,開始制定C语言标准的工作。

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

时间: 2024-12-16 14:56:11

C语言概述的相关文章

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>中

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.丰富的运算符 计算机的基本功能就是计算,因此一门程序设计语言的

OpenGL官方教程——着色器语言概述

OpenGL官方教程——着色器语言概述 OpenGL官方教程——着色器语言概述 可编程图形硬件管线(流水线) 可编程顶点处理器 可编程几何处理器 可编程片元处理器 语言 可编程图形硬件管线(流水线) 将 Pertransformed Vertices (每一个待转换顶点) 传人 Programmable Vertex Processor (可编程的顶点处理器) 得到 Transformed Vertices (转换的顶点) 将 Transformed Vertices (转换的顶点) 传入 Pr

swift介绍和语言概述

Swift是什么? Swift是苹果于WWDC 2014发布的编程语言,这里引用The Swift Programming Language的原话:  Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programm

第一章 C/C++语言概述 【代码手输一遍】

前情提要:如果不涉及面向对象的部分,那么C++语言和C语言的语法90%以上是一样的,只不过略有扩充,用起来更为方便而已. 查看gcc版本: E:\Program Files\MinGW\bin>gcc -v Reading specs from ./../lib/gcc/mingw32/3.4.5/specs Configured with: ../gcc-3.4.5-20060117-3/configure --with-gcc --with-gnu-ld --wi th-gnu-as --h

java 语言概述(零)

java 语言概述 1.软件:系统软件 vs 应用软件 2.语言的分类:第一代:机器语言 第二代:汇编语言 第三代:高级语言(面向过程- - - -面向对象) 3.java语言的特性:①面对对象性②健壮性③跨平台性(write  once,run  anywhere) - - -JVM 4.安装JDK及配置path环境变量 1)傻瓜式安装JDK 2)配置path环境变量 >河床好比操作底层,jdk好比河水,java应用程序好比是船   注意:JDK  JRE  JVM   5.如何编写并运行第一