仅C-标量运算?

仅C-标量运算?,c,scalar,C,Scalar,阅读维基百科: “高级和低级这两个术语本质上是相对的。几十年前,C语言和类似的语言通常被认为是“高级的”,因为它支持表达式求值、参数化递归函数、数据类型和结构等概念,而汇编语言被认为是“低级的”“。如今,许多程序员可能将C称为低级,因为它缺少大型运行时系统(无垃圾收集等),基本上只支持标量操作,并提供直接内存寻址。因此,它很容易与汇编语言以及CPU和微控制器的机器级融合。” 这到底是什么意思?其他编程语言提供了哪些C语言没有提供的操作?鉴于本文的上下文和主题,本文所指的是C语言本身定义的术语“

阅读维基百科:

“高级和低级这两个术语本质上是相对的。几十年前,C语言和类似的语言通常被认为是“高级的”,因为它支持表达式求值、参数化递归函数、数据类型和结构等概念,而汇编语言被认为是“低级的”“。如今,许多程序员可能将C称为低级,因为它缺少大型运行时系统(无垃圾收集等),基本上只支持标量操作,并提供直接内存寻址。因此,它很容易与汇编语言以及CPU和微控制器的机器级融合。”


这到底是什么意思?其他编程语言提供了哪些C语言没有提供的操作?

鉴于本文的上下文和主题,本文所指的是C语言本身定义的术语“标量”。在C语言中,算术类型和指针类型一起称为标量类型(参见6.2.5/21).在日常语言中,我们经常看到这些类型被称为基本类型或内置类型(而正确的形式术语又是标量)。重点是标量类型旨在成为立即(或几乎立即)的类型由硬件支持。C中的大多数非概念性操作只对标量类型和标量类型进行操作

如果你看一看C语言的历史,你会发现早期版本的C语言是如此严格的标量,以至于你甚至不能将一个结构对象分配给另一个结构对象(或者将它传递给函数/函数按值返回)。在核心语言中进行结构复制的能力后来被添加到C中。直到今天,它仍然是整个核心语言中唯一的非标量操作

另一方面,C++以及其他高级语言支持对用户定义的类型(根据定义,这些类型不是标量类型)或其他没有硬件直接支持的类型进行操作

不,这篇文章试图表达的观点与向量运算无关,而与标量运算相反。当然,对向量运算的支持与语言的层次完全正交。在低级语言和高级语言中都可以使用向量运算。标量一词在某种意义上被使用这是我上面描述的。

将“标量”与“聚合”或“复合”进行对比。任何以“基本上”开头的短语在我看来都是可疑的,在维基百科中也不是很“百科全书式”。根据安德烈的回答,我建议你编辑这篇文章,将“基本上”改为“基本上”。