阅读维基百科:
"高级别和低级别的术语本质上是相对的.几十年前,C语言和类似语言通常被认为是"高级",因为它支持表达式评估,参数化递归函数和数据类型和结构,而汇编语言被认为是"低级".今天许多程序员可能将C称为低级,因为它缺少大型运行时系统(没有垃圾收集等),基本上只支持标量操作,并且提供直接存储器寻址功能,因此很容易与汇编语言和CPU和微控制器的机器级别相结合."
http://en.wikipedia.org/wiki/High_level_language
这究竟是什么意思?其他编程语言提供哪些操作哪些C没有?
AnT*_*AnT 15
鉴于文章的上下文和主题,文章所指的是术语"标量",因为它是用C语言本身定义的.在C语言中,算术类型和指针类型一起称为标量类型(见6.2.5/21).在日常用语中,我们经常看到这些类型被称为基本类型或内置类型(而适当的正式术语又称为标量).关键是标量类型旨在成为硬件立即(或几乎立即)支持的类型.C中的大多数非概念操作仅在标量类型和标量类型上运行.
如果你看看C语言的历史,你会发现C的早期版本是如此限制性标量,你甚至不能将一个结构对象分配给另一个结构对象(或者将它传递给一个函数/从按值计算的功能).以后,将核心语言中的结构复制添加到C中的能力.直到今天,它仍然是整个核心语言中唯一的非标量操作.
另一方面,C++以及其他更高级语言支持对用户定义类型的操作(根据定义,这些类型不是标量),或者支持其他没有硬件直接支持的类型.
PS否,文章试图做的一点与向量操作无关,而与标量操作相反.当然,对向量操作的支持与语言的级别完全正交.您可以使用低级语言以及高级语言进行向量操作.术语标量在我上面描述的意义上使用.