Comienzo con C

04/04/2004 - 13:31 por Noemi | Informe spam
Hola a todos. Quería comenzar a hacer alguna cosilla con
C, pero no sé nada. Me gustaría me dijerais por donde
debo comenzar, si por C o por C++, etc. También donde se
encuentra algún manual que merezca la pena. Etc... Toda
la información que me proporcioneis me viene bien por que
no se nada, estoy en punto cero.
Gracias
Noemi

Preguntas similare

Leer las respuestas

#6 JRSTUART
13/04/2004 - 19:51 | Informe spam
Si eres nuevo en C, empieza con C++

Los que pasamos de C a C++ , cambiamos de forma de pensar
y personalmente fue para bien. Es mejor que si empiezas ,
tengas en mente una vision de Programacion Orientada a
Objetos, y esto es C++.

Pero la base es la base, la sintaxis , formatos,
definiciones las encuentras en el LA Biblia, el libro de
Kernigan & Ritchie, o si no en la Web que hay informacion
hasta el infinito.-

En C++ , no tengo en mente el autor, pero mas aprendi del
Internet. Sobre todo los conceptos, el resto viene solo.

Saludos


Hola a todos. Quería comenzar a hacer alguna cosilla con
C, pero no sé nada. Me gustaría me dijerais por donde
debo comenzar, si por C o por C++, etc. También donde se
encuentra algún manual que merezca la pena. Etc... Toda
la información que me proporcioneis me viene bien por que
no se nada, estoy en punto cero.
Gracias
Noemi
.

Respuesta Responder a este mensaje
#7 Jordi Maycas
13/04/2004 - 21:58 | Informe spam
obviamente empieza con C, y cuando controles de punteros, punteros,
punteros... he dicho punteros, pasate a C++ y te lias de nuevo con punteros,
y con clases, y con objetos.


"JRSTUART" escribió en el mensaje
news:1bfdf01c4217f$f1a593a0$
Si eres nuevo en C, empieza con C++

Los que pasamos de C a C++ , cambiamos de forma de pensar
y personalmente fue para bien. Es mejor que si empiezas ,
tengas en mente una vision de Programacion Orientada a
Objetos, y esto es C++.

Pero la base es la base, la sintaxis , formatos,
definiciones las encuentras en el LA Biblia, el libro de
Kernigan & Ritchie, o si no en la Web que hay informacion
hasta el infinito.-

En C++ , no tengo en mente el autor, pero mas aprendi del
Internet. Sobre todo los conceptos, el resto viene solo.

Saludos


Hola a todos. Quería comenzar a hacer alguna cosilla con
C, pero no sé nada. Me gustaría me dijerais por donde
debo comenzar, si por C o por C++, etc. También donde se
encuentra algún manual que merezca la pena. Etc... Toda
la información que me proporcioneis me viene bien por que
no se nada, estoy en punto cero.
Gracias
Noemi
.

Respuesta Responder a este mensaje
#8 Cholo Lennon
13/04/2004 - 22:53 | Informe spam
No es obvio, el mismo Stroustrup recomienda empezar directamente con C++. Si
bien puedes saber los 2 lenguajes, la técnica general para programar en uno
y otro es distinta. Tienen puntos de vista diferente.

Te pongo un párrafo textual de Bjarne Stroustrup:

"No se C o C++, ¿Debo aprender C primero?
No, aprenda C++ primero. El subconjunto C de C++ es más de fácil de
aprender para novatos en C/C++ y más fácil de usar que el mismo C. La razón
es que C++ provee de mayores garantías que C (a través de un chequeo de
tipos más fuerte). En adición, C++ provee muchas características menores,
tales como el operador new, que son notacionalmente más convenientes y con
menor tendencia a error que las alternativas de C. Entonces, si planeas usar
C y C++ (o sólo C++), no deberías partir de C. Para usar C bien, necesitas
conocer trucos y técnicas que no están cerca, ni son tan importantes o
comunes en C++ como en C. Buenos libros de C tienden (razonablemente
suficiente) a hacer énfasis en técnicas que se necesitarán para completar
proyectos mayores en C. Buenos textos de C++, por otra parte, hacen énfasis
en técnicas y características que lo lleven a usar C++ para abtracción de
datos y programación orientada a objetos. Conociendo la base de C++, las
alternativas de C (el bajo nivel) son trivialmente aprendidas (si es
necesario).
Para mostrar mis inclinaciones: Para aprender C, use (1) como texto
primario. Para aprender C++ , use (2). Ambos libros tienen la ventaja de
combinar una presentación tutorial de las técnicas y características del
lenguaje con un completo manual de referencia. Ambos describen su
respectivos lenguajes más que implementaciones particulares y nunca intentan
describir una biblioteca particular empaquetada con una implementación
particular."

(1) Brian Kernighan and Dennis Ritchie: "The C programming language" (second
edition). Prenctice-Hall, Englewood Cliffs, NJ. 1988. ISBN 0-13-110362-8.

(2) Bjarne Stroustrup: "The C++ programming language" (2nd edition *).
Addison-Wesley, Reading, MA. 1991, ISBN 0-201-53992-6.

* Ya está disponible la 3ra edición

Extraido de: Bjarne Stroustrup: "The design and evolution of C++". Addison &
Wesley, Chapter 7.2 (Teaching and Learning C++), pag.169, 1994. ISBN
0-201-54330-3.

Traducción: Cholo Lennon.


Saludos
Cholo Lennon
Salta, ARG
Respuesta Responder a este mensaje
#9 Jordi Maycas
15/04/2004 - 21:28 | Informe spam
son opiniones, estoy totalmente en desacuerdo. Valga un ejemplo estupido,
todos cuando nos sacamos el carnet y vamos con la L empezamos con un coche
seminuevo es cierto que un deportivo, tiene ABS, no hay que hacerle
motor, etc, etc. Pero todos seguimos poniendo las bases en su sitio. No
podemos empezar la casa por el tejado.

Empezar por C, y luego C++, no implica habituarse a malos habitos de
programacion, lease goto por ejemplo, todo lo contrario. Puedes empezar por
C++, pero si no se tienen claros los conceptos de estructuracion,
modularizacion, la casa de C++ es demasiado amplia y compleja (no quiere
decir dificil).

"Cholo Lennon" escribió en el mensaje
news:
No es obvio, el mismo Stroustrup recomienda empezar directamente con C++.


Si
bien puedes saber los 2 lenguajes, la técnica general para programar en


uno
y otro es distinta. Tienen puntos de vista diferente.

Te pongo un párrafo textual de Bjarne Stroustrup:

"No se C o C++, ¿Debo aprender C primero?
No, aprenda C++ primero. El subconjunto C de C++ es más de fácil de
aprender para novatos en C/C++ y más fácil de usar que el mismo C. La


razón
es que C++ provee de mayores garantías que C (a través de un chequeo de
tipos más fuerte). En adición, C++ provee muchas características menores,
tales como el operador new, que son notacionalmente más convenientes y con
menor tendencia a error que las alternativas de C. Entonces, si planeas


usar
C y C++ (o sólo C++), no deberías partir de C. Para usar C bien,


necesitas
conocer trucos y técnicas que no están cerca, ni son tan importantes o
comunes en C++ como en C. Buenos libros de C tienden (razonablemente
suficiente) a hacer énfasis en técnicas que se necesitarán para completar
proyectos mayores en C. Buenos textos de C++, por otra parte, hacen


énfasis
en técnicas y características que lo lleven a usar C++ para abtracción de
datos y programación orientada a objetos. Conociendo la base de C++, las
alternativas de C (el bajo nivel) son trivialmente aprendidas (si es
necesario).
Para mostrar mis inclinaciones: Para aprender C, use (1) como texto
primario. Para aprender C++ , use (2). Ambos libros tienen la ventaja de
combinar una presentación tutorial de las técnicas y características del
lenguaje con un completo manual de referencia. Ambos describen su
respectivos lenguajes más que implementaciones particulares y nunca


intentan
describir una biblioteca particular empaquetada con una implementación
particular."

(1) Brian Kernighan and Dennis Ritchie: "The C programming language"


(second
edition). Prenctice-Hall, Englewood Cliffs, NJ. 1988. ISBN


0-13-110362-8.

(2) Bjarne Stroustrup: "The C++ programming language" (2nd edition *).
Addison-Wesley, Reading, MA. 1991, ISBN 0-201-53992-6.

* Ya está disponible la 3ra edición

Extraido de: Bjarne Stroustrup: "The design and evolution of C++". Addison


&
Wesley, Chapter 7.2 (Teaching and Learning C++), pag.169, 1994. ISBN
0-201-54330-3.

Traducción: Cholo Lennon.


Saludos
Cholo Lennon
Salta, ARG


Respuesta Responder a este mensaje
#10 Cholo Lennon
15/04/2004 - 23:06 | Informe spam
Mira he enseñado a programar en varios lenguajes (VB, C, C++, FoxPro,
assembler, etc). Mi experiencia me ha indicado varias cosas, entre ellas que
C++ es más sencillo de aprender para un principiante que C, además de que
con STL por ejemplo se puede llegar a conseguir cierta productividad que con
C en principio no se logra.

Es más sencillo por diversas razones como por ejemplo: el uso de cadenas es
fácil de entender sin entrar en detalles sobre como se construyen (o manejan
internamente) las mismas (algo que en C hay que entender bien antes de
usar), cin y cout son más sencillos de usar que printf y scanf (aquí ya hay
que enseñar el concepto de dirección), new y delete tambien son más
sencillos de usar que malloc y free, el tipo bool expresa mejor el concepto
que usar una variable entera, etc.

Y ojo que C++ esté basado en C no significa que dependa del mismo. C++
actualmente es un lenguaje integro, entonces porque aprender C si lo que
realmente se quiere es aprender C++?. Creo que aquí de nuevo estoy en
desacuerdo con tu opinión: C no es la base para aprender C++ y como te digo:
puedes aprender C++ sin haber usado nunca C.

De hecho si partes de C para aprender C++ tendrás armarte de paciencia para
aprender que ciertas cosas que las hacias sin problemas en C no las podrás
hacer en C++ (ej: conversión por defecto de punteros tipados a punteros
void) o que otras son más elegantes y seguras hacerlas de distinta manera
(como usar los operadores de casting de C++ antes que el casting general de
C).

Además ahora con el nuevo estándar de C99, el lenguaje C se acerca a C++ en
varias cosas (por ejemplo funciones inline, comentarios //, declaración de
variables en lugares de uso, variables con alcance para ciclos for, etc),
pero se aleja de C++ en otras que hacen que código C sea más incompatible
con C++ (punteros anti-aliasing (restrict), tipo booleano distinto de C++,
macros con argumentos variables, arrays de longitud variable,
inicializadores designados, etc).

Por supuesto que mientras más sepas mejor. Si puedes saber ambos lenguajes,
con todo lo que ello implica, mejor. Pero quizás no debas perder el tiempo
aprendiendo cosas que después quizás no uses o que debás aprender por
partida doble (las diferencias entre ambos lenguajes).


Saludos
Cholo Lennon
Salta, ARG
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida