Muchos de los libros de texto sobre el lenguaje de programación C dicen que C es un lenguaje de programación de alto nivel, pero muchos de los tutores en línea dicen que C también es un lenguaje de programación de nivel medio. ¿Por qué es así?
programming-languages
c
high-level
CodeIt
fuente
fuente
Respuestas:
Históricamente, todo lo que se resume sobre el código de ensamblaje se llamaba de alto nivel. C ciertamente hace eso. Esta definición también es relativamente clara, en contraste con lo que sigue.
Con el tiempo, creamos más y más lenguajes de programación e inventamos más y más abstracciones y herramientas. Comparado con, por ejemplo, Python, el lenguaje C es positivamente primitivo en riqueza semántica y nivel de abstracción sobre el hardware. Con eso en mente, a muchas personas les resulta engañoso llamar a C de alto nivel, cuando hay una gran cantidad de lenguajes que están muy por encima del hardware.
Así que ahora "alto nivel" generalmente significa "resúmenes mucho sobre hardware" y "bajo nivel" significa "resúmenes poco". Esta es la definición que usan sus tutores. Sin embargo, no todos están de acuerdo, y los textos antiguos no adoptan mágicamente la nueva terminología, por lo que aún se ve el antiguo uso de "alto nivel" (bajo el cual C es de alto nivel) flotando. Tenga en cuenta que muchos buenos libros de C son básicamente ediciones más nuevas de libros lanzados hace veinte años.
fuente
Es un lenguaje de nivel más alto que el código de máquina (ensamblado), que es el punto de vista del que provienen los libros y tutoriales de programación en C.
En ese sentido, es un lenguaje de programación de alto nivel.
Sin embargo, todavía está muy cerca del hardware, mucho más que otros lenguajes más modernos (Java, C # y similares), cuando se ve desde este punto de vista, es un lenguaje de programación de nivel medio.
fuente