[C con Clase] Curso de C

Samuel Porras samuelporras en gmail.com
Sab Abr 11 15:19:53 CEST 2009


Muchas grácias Armando y Salvador,
seguiré entonces con el Curso de C/C++ de deitel y deitel y cuando acabe 
me volveré a repasar el Curso de C++ que hay en la web para así poder 
tener un mayor campo visual a la hora de programar.

Muchas grácias a los dos y un cordial saludo! ^^

Salvador Pozo escribió:
> Hola:
>
> El día 11 de abril de 2009 7:32, Samuel Porras
> <samuelporras en gmail.com> escribió:
>
>   
>> ¿Teneis también un curso de C o el curso de C++ engloba los dos Cursos?
>>     
>
> No, no tenemos (todavía) un curso de C. Y no, el curso de C++ no
> engloba a los dos lenguajes.
>
> Es posible que algún día abordemos un curso de C, aunque no es uno de
> nuestros objetivos a corto plazo.
>
>   
>> Se que C++ es una extensión de C pero en C no se usan namespaces ni el cout
>> o el cin, y para programas que no sean muy complejos o que no necesiten
>> partes de C++ sería mejor utilizar C puro no?
>>     
>
> Aunque las diferencias entre C y C++ puedan parecer superficiales, no
> lo son. C++ no es una simple extensión de C (lo es pero no simple).
> Las diferencias están destinadas a cambiar el paradigma de
> programación. C está orientado a programación procedimental y C++ a
> programación orientada a objetos.
>
> C++ permite crear programas en "C puro", al menos en el sentido en que
> planteas la pregunta. Basta con usar librerías C y no tener en cuenta
> características propias de C++ (clases, namespaces, operadores como
> new o delete, etc). Seguirán siendo programas C++, pero se podrán
> compilar con un compilador de C.
>
>
>   
>> Al compilar un Hola Mundo en C y otro en C++ he notado que el .exe de C
>> ocupa mucho menos espacio en disco.
>>     
>
> La diferencia no está en el lenguaje, sino en las librerías. Como dice
> Armando, los ficheros de cabecera C++ generan un ejecutable más grande
> porque crean más código, a través de plantillas.
>
> Si usas librerías ANSI en lugar de streams, verás que el ejecutable se
> reduce bastante.
>
>   
>> Es buena idea aprender las dos versiones por separado?
>>     
>
> Podría serlo, "el saber no ocupa lugar". Sin embargo, las diferencias
> están sobre todo en la forma de resolver los problemas, no en la
> codificación C/C++.
>
> Programar en C requiere más cuidado por parte del programador, y por
> lo tanto, mayor disciplina.
>
> Pero considero que es buena idea pensar que se trata de lenguajes
> diferentes, aunque emparentados. Pero es un error considerar que ese
> parentesco hace a uno más completo, o más evolucionado o más
> recomendable que al otro.
>
> No estoy de acuerdo con Armando en que C++ oculta características de
> bajo nivel, puesto que C++ incluye a C, esas características están
> presentes en ambos lenguajes. Otro tema es que en estos tiempos no se
> abunde mucho en programación de bajo nivel, al menos durante el
> aprendizaje. Creo que esto está más motivado por las características
> de los sistemas operativos actuales que por el propio lenguaje.
>
> Por otra parte, cualquier programador que conozca C++ puede comprender
> (con pocas excepciones) programas escritos en C, aunque no sea capaz
> de escribir programas C con tanta soltura. Usando una analogía, para
> alguien que conozca español es relativamente sencillo entender
> portugués o italiano, aunque no sea capaz de hablarlo o escribirlo.
> (Por supuesto, los lenguajes de programación son más simple que
> cualquier lenguaje humano).
>
> Hasta pronto.
>   




Más información sobre la lista de distribución Cconclase