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

#11 Jordi Maycas
22/04/2004 - 14:55 | Informe spam
bueno... pues anda q no digamos nada del assembler x86
"Cholo Lennon" escribió en el mensaje
news:%
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
#12 Hardys
04/05/2004 - 18:16 | Informe spam
La POO es simplemente programacion estructurada
estructurada, lo cual nos dice que debemos aprender a
programar estructurado para luego adentrarnos en el mundo
de la POO. Asi que estoy de acuerdo en C primero y Luego
C++.

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
#13 Cholo Lennon
04/05/2004 - 18:31 | Informe spam
Y que C++ no permite la programación estructurada??????????????
No entiendo realmente. Parece que tienen la cabeza en una caja!!!!!!!!!!
C++ es un lenguaje que permite multiples paradigmas de programación!,
entonces porque aprender otro lenguaje?????. He dado tantos argumentos y
nada les parece bien!

Saludos
Cholo Lennon
Salta, ARG
Respuesta Responder a este mensaje
#14 Willser F. González C.
05/05/2004 - 21:16 | Informe spam
A lo mejor el mundo no es como usted lo cree ...

"Cholo Lennon" escribió en el mensaje
news:
Y que C++ no permite la programación estructurada??????????????
No entiendo realmente. Parece que tienen la cabeza en una caja!!!!!!!!!!
C++ es un lenguaje que permite multiples paradigmas de programación!,
entonces porque aprender otro lenguaje?????. He dado tantos argumentos y
nada les parece bien!

Saludos
Cholo Lennon
Salta, ARG


Respuesta Responder a este mensaje
#15 Cholo Lennon
06/05/2004 - 04:37 | Informe spam
O mejor dicho... el mundo no sólo es como cada uno lo cree ;-)

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