C语言的特点:
1:所有操作系统的内核都是由C语言实现的
2:可移植性,可以在不同平台不同系统上运行(切换平台时,所需更改的语句少,就是移植性好)
3:很高的运行效率
4:简洁紧凑,可以直接访问硬件
C语言的缺点:
1:代码的复用性差(C是面向结构的)
2:维护性差
3:扩展性差
c语言的标准:1:K&RC 2:ANSIC/C89 3:C99 4:C11
数据类型
1:一个整型数 int a;
2: 一个指向整型数的指针 int *a
3: 一个指向指针的指针,它指向的指针是一个整型数 int **a
4:一个有10个整型数的数组 int a[10]
5:一个指向有10个指针的数组,该指针指向一个整型数 int *a[10]
6:一个指向有10个整型数组 的指针 int (*a)[10]
7:一个指向函数的指针,该函数有一个整形参数并且返回一个整形 int (*a)(int)
8:一个有10个指针的数组,该指针指向一个函数,该函数有一个整形参数并且返回一个整形数 int (*a[10])(int)
现阶段有哪些主流编程语言,各有什么特点
1.VB:是新人开发与系统无关的综合应用程序的首选;容易使用和厂商财力很强是其仅有的两点优势。VB开发效率高,代码执行效率一般,但是入门和学习速度快,有较好的学习氛围和帮助书籍和帮助文档。但是随着微软的.net技术的推广,VB将会逐渐推出历史舞台。
2. PB:是开发大型MIS及各类数据库跨平台应用的首选;从数据库前端工具来讲甚至远远超过了Oracle的Develop系列等专门的工具;从通用语言角度来讲功能也与VB等不相上下;多媒体和网络功能与其他工具相比较弱。 PB最大的优势就是Datawindow技术的成熟和方便,他成为PB与其他数据库开发工具抗衡的资本。同时PB在对JAVA和WEB,以及面向对象方面的发展也可以预见PB将成继续成为数据库系统(特别是MIS系统)开发工具的首选。同时PB的强大帮助文档也为初学者提供了入门基础,PB连接数据库的自由和方面也为PB的提供了方便,同时PB对API的调用以及对报表的处理强大。但是PB的高级编程书籍的缺乏和基础语言PowerScript的普及程度对PB的明天有一定的限制。
3. C++ Builder/Dephi:是唯一一套能够同时适用于开发数据库应用、网络及Web应用、分布式应用、可重用组件、系统软件、驱动程序、多媒体及游戏等所有软件的高效率开发环境;VCL源码基于Object Pascal是C++ Builder 唯一的缺憾,基础语言不够通用和开发系统软件功能不足是Dephi仅有的两点不足。
4. VC:从功能上讲除了跨平台应用外什么都可开发;从开发效率角度讲只局限于开发windows系统应用、可重用组件及驱动程序。 又因为有微软的支持,其自身的基础语言的普及程度高,以及其代码的执行效率高等特性、VC自带强大帮助文档和大量优质教材,VC在数据库开发工具中始终可以稳住阵角。
5. JAVA:适用于开发除了系统软件、驱动程序、高性能实时系统、大规模图像处理以外所有的应用。在一般的管理信息系统中和一般的数据库开发中,很少有人会选择JAVA,一是由于其开发环境的配置较难,已经和数据库连接时较为负责。
解释性语言有哪些,有什么特点
高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可
将它们分为两类:
1.解释类:执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由
相应语言的解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不
能生成可独立执行的可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可
以动态地调整、修改应用程序,典型的解释型的高级语言有BASIC。
2.编译类:编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码
(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。
但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(*.OBJ)才
能执行,只有目标文件而没有源代码,修改很不方便。现在大多数的编程语言都是编译型
的,例如Visual C++、Delphi等。
高级语言里一个程序的编译和执行大概是 下面的情况:
编译器将高级语言从源代码翻译成与之等价的目标程序(就相当于从中文翻译成中文),而后就隐退了。在随后的某个时刻,
用户启动目标程序由操作系统执行。实现高级语言的另外一种方式为解释:
与编译不同的是,解释器在目标程序(其实根本就没有目标程序,只是与编译来对比)执行期间,解释器一直随之运行
。这种执行过程完全由解释器控制的。从效果上看,解释器实现了一台“虚拟计算机”,其“机器语言”就是高级语言,解释器一次读入一条或多条语句
,按照其自身规定的方式去执行相应的操作。一般说来,解释比编译有着很好的灵活性;编译一般有着较好的性能。但是有些语言确是采用了两者的混合形式。
面向结构和面向对象有什么区别
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。