C - only scalar operations?

Reading on Wikipedia:

“High-level and low-level terms are relative in nature. Several decades ago, C and similar languages ​​were most often considered“ high-level ”because it supported concepts such as expression evaluation, parametric recursive functions, data types, and structures, while assembly language was considered “low-level.” Many programmers today can treat C as low-level, because it lacks a large runtime system (without garbage collection, etc.), basically it only supports scalar " and provides direct memory addressing. Therefore, it easily mixes with assembly language and computer level on processors and microcontrollers."

http://en.wikipedia.org/wiki/High_level_language

What does it mean? What operations do other programming languages ​​provide that C does not support?

+3
source share
1 answer

Given the context and topic of the article, the article considers the term “scalar” as defined in C. In C, arithmetic types and pointer types are collectively referred to as scalar types (see 6.2.5 / 21). In everyday language, we often see that these types are called basic types or built-in types (while the correct formal term, again, is scalar). The fact is that scalar types are intended for types that are immediately (or almost immediately) supported by hardware. Most non-conceptual operations in C only work with scalar types and scalar types.

C, , C , struct ( / ). ​​ C. .

++, , , , , , .

P.S. , , , , . , , . , . "" , .

+15

Source: https://habr.com/ru/post/1734733/


All Articles