Claro que el C es un lenguaje de bajo nivel. Tienes punteros, acceso directo a la memoria a nivel de byte, estructuras de datos en las que defines casi casi hasta la alineación a nivel de bit. Y las estructuras de control son bastante simplonas, no mucho más complicadas que bucles ensamblador con un pelín de azúcar sintáctico.
No hay clases, no hay estructuras de control complejas, ni demasiada abstracción en nada. Es un lenguaje pensado para la programación de sistemas, no tanto (al menos hoy día) para hacer aplicaciones.
Digamos que, en su momento, cuando las opciones eran ensamblador puro y duro o C/FORTRAN/Pascal, C era un lenguaje de alto nivel. Hoy día, en que el "nivel" ha subido tanto que no sólo se usan clases y objetos, sino cosas aún más abstractas que hasta se alejan del modelo Von Neumann de ejecución secuencial, el listón ha subido mucho y difícilmente se puede considerar a C como lenguaje de alto nivel. Especialmente cuando ya apenas nadie lo usa como tal, y su uso se reduce a nichos concretos muy cercanos al hardware (precisamente porque es bueno para eso).
Por tanto, me da igual lo que digan los libros de programación de los años 70. A día de hoy, C no es un lenguaje de alto nivel. Ni de coña. Y no pasa nada, que ser de bajo nivel no es algo malo ni degrada a nadie. Es simplemente una característica más.
Re:¿Usan 'gotos' para los programas de apple?
(Puntos:2)No hay clases, no hay estructuras de control complejas, ni demasiada abstracción en nada. Es un lenguaje pensado para la programación de sistemas, no tanto (al menos hoy día) para hacer aplicaciones.
Re:¿Usan 'gotos' para los programas de apple?
(Puntos:2)Por tanto, me da igual lo que digan los libros de programación de los años 70. A día de hoy, C no es un lenguaje de alto nivel. Ni de coña. Y no pasa nada, que ser de bajo nivel no es algo malo ni degrada a nadie. Es simplemente una característica más.