| |
| - ¿Qué
son C, C++, C#?
- Cursos
de C, C++, C#.
- Compiladores
de C, C++, C#.
- Fuentes
en C, C++, C#.
- Otros
enlaces relacionados con C, C++, C#.
- Últimos
cambios en esta página.
|
| | C
es un
lenguaje
de programación de ordenadores, de propósito
general. Su
uso
está muy extendido,
y existen compiladores para muchos sistemas
operativos. C++
(C plus
plus
o C más más) es una evolución del
lenguaje C, que
soporta
la Programación Orientada a Objetos.
A su vez, C#
(se
debe
leer "C sharp" -sostenido-, es una alusión musical) es una
evolución
de C++, surgida hace poco tiempo, propuesta por Microsoft como
alternativa a Java. |
Cursos
de C:
- Curso
de C, por Nacho Cabanes. Mi
curso de C
está en plena remodelación. Lo estoy revisando y
reescribiendo entero. Esta remodelación
terminará
en Junio de 2006
(será progresiva, durante el curso escolar 2005-2006).
Así que ahora mismo tienes disponibles tres versiones:
- Libro
"Aprenda Ansi
C como si estuviera en primero",
de la Escuela Superior de
Ingenieros Industriales, Universidad de Navarra. Es un documento en
formato PDF,
- Curso de C
por
Angel Salas (Universidad de Zaragoza), en español, en
formato PDF,
de 360 K, 240 páginas impresas.
- Tienes ejemplos de C en Linux en la página de Chuidiang
- Tienes
un
seminario de C (4 entregas de unas 10
páginas cada una) y otro de C++ (3 entregas de unas 10
páginas cada una) en la página de la asignatura
de Algoritmos y
estructuras de datos, de la Universidad de Murcia.
- Curso de Visual
C por Daniel Villahermosa, en
español, en formato PDF,
y
comprimido con ZIP, de 693 K, 31 páginas impresas.
- Tambien tienes
una Referencia
breve de C, en español
(2 páginas, un fichero PDF de
68 Kb).
Cursos de C++: Cursos de C#: Otros
cursos relacionados con C |
| Compiladores
de C,
C++, C# |
| Para
Windows, C y C++:
- Dev
C++ es un entorno de desarrollo
para Windows, apoyado en
el compilador de C y C++ de GNU, creado por Bloodshed.
Se puede descargar el
entorno y el compilador, en un paquete listo para empezar a trabajar.
- MinGW
es
otro
compilador de C y C++ basado en el de GNU, adaptado para Windows, que
se
puede descargar de www.mingw.org.
En esta
página puede llegar a ser complicado
encontrar lo que se debe descargar, pero una buena alternativa es MinGW
Developer Studio,
un entorno de desarrollo que se puede descargar solo o con el
compilador ya listo para funcionar.
- Watcom
C++
ha sido mucho tiempo uno de los compiladores comerciales más
extendido.
Ahora se ha convertido en "Open Source". Se
puede
descargar la
documentación y el
compilador (versión 1.5 disponible desde abril de 2006), en www.openwatcom.com
- Borland
C++ 5.5
también tiene una versión de libre
distribución
(que
no incluye entorno de desarrollo, sólo las utilidades de
línea de comandos) y se puede descargar desde la
página
Web de Borland.
- Digital
Mars
es un compilador de
C
y C++ para Dos y Windows, de libre distribución,
todavía
en
fase beta, creado por Walter Bright (autor de Symantec C++), que no
incluye
entorno de desarrollo. Versión 8.47 disponible en enero de
2006.
- LCC-Win32.
Un
compilador
de C de libre distribución (gratis) para Windows, de 3.2 Mb
de
tamaño.
- Informacion
sobre Visual
C++,
la
herramienta
visual para Windows creada por Microsoft, basada en el lenguaje C++.
- La
versión "Express" de Visual C++ 2005
parece poder descargarse libremente desde la página Web de
Microsoft, en msdn.microsoft.com/vstudio/express/visualc/download/.
Para
Windows, C#Para Dos
- Turbo
C++
y Borland C++
son productos de Borland,
hoy descatalogados, de modo que sera dificil adquirirlos en tiendas. La
versión
actual recibe el nombre de "C++
Builder",
y es un compilador
visual
para Windows. La informacion sobre los
productos
de desarrollo creados por Borland está en la direccion www.borland.es/products.
- Turbo
C 2.01
ahora es de libre
distribución y se puede descargar
desde la página Web de Borland,
- Turbo
C++ 1.01
ahora es de libre
distribución y se puede descargar
desde
la página Web de Borland.
- DJGPP.
Un buen compilador de C/C++
gratis
de 32 bits para MsDos, basado
en
el compilador de GNU, y adaptado por D.J. Delorie.
-
PCC 2.1.
Un compilador de C de libre
distribución (shareware) y de pequeño
tamaño (unos
175 K).
Para Linux:
- El
compilador GCC debería estar disponible en casi cualquier
distribución de Linux.
- Si
quieres un entorno de desarrollo, KDevelop es parte del escritorio KDE,
y Anjuta es un entorno para Gnome, que tiene su página
oficial
en anjuta.sourceforge.net
|
| Otros
enlaces relacionados con C,
C++, C# |
| - Página
de Bruce Eckel,
creador de libros como "Thinking in C++" y "Thinking in Java", cuyas
versiones electrónicas están disponibles,
así como
los ejemplos incluidos en los libros: http://www.bruceeckel.com
- HelpPC
es
una referencia muy completa que incluye ayuda sobre hardware del Pc,
las
principales funciones del lenguaje C, ensamblador, interrupciones y
órdenes
de MsDos. Está comprimido en un fichero de 275 K de
tamaño.
- En la
página de José
Antonio González
Seco tienes un curso
y otros
enlaces relacionados con C#.
|
| Contenido
de mi curso de C |
| Mi
curso de C
acaba de sufrir una
remodelación completa. Los
contenidos de la versión actual (0.21) son:
0. Conceptos básicos sobre programación
0.1 Lenguajes de alto nivel y de bajo nivel.
0.2 Ensambladores, compiladores e intérpretes
0.3 Pseudocódigo
1. Toma de contacto con C
1.1 Escribir un texto en C
1.1.1 Cómo probar este programa en
Linux
1.1.2 Cómo probar este programa en
Windows
1.2 Mostrar números enteros en pantalla
1.3 Operaciones aritméticas básicas
1.3.1. Orden de prioridad de los operadores
1.3.2. Introducción a los problemas de
desbordamiento
1.4 Introducción a las variables: int
1.4.1 Definición de variables:
números
enteros
1.4.2 Asignación de valores
1.4.3 Mostrar el valor de una variable en pantalla
1.5 Identificadores
1.6 Comentarios
1.7 Datos por el usuario: scanf
2. Tipos de datos básicos
2.1. Tipo de datos entero
2.1.1. Tipos de enteros: signed/unsigned,
short/long
2.1.2. Problemática: asignaciones y
tamaño
de los
números; distintos espacios ocupados según el
sistema
2.1.3. Unidades de medida empleadas en
informática
(1): bytes,
kilobytes, megabytes...
2.1.4. Unidades de medida empleadas en
informática
(2): los bits
2.1.5. Sistemas de numeración: 1-
Sistema binario
2.1.6. Sistemas de numeración: 2-
Sistema octal
2.1.7. Sistemas de numeración: 3-
Sistema
hexadecimal
2.1.8. Formato de constantes enteras: oct, hex
2.1.9. Representación interna de los
enteros
2.1.10. Incremento y decremento
2.1.11. Operaciones abreviadas: +=
2.1.12. Modificadores de acceso: const, volatile
2.2. Tipo de datos real
2.2.1. Simple y doble precisión
2.2.2. Mostrar en pantalla números
reales
2.3. Operador de tamaño: sizeof
2.4. Operador de molde: (tipo) operando
2.5. Tipo de datos carácter
2.5.1. Secuencias de escape: \n y otras.
2.5.2. Introducción a las dificultades
de las
cadenas de texto
3. Estructuras de control
3.1. Estructuras alternativas
3.1.1. If
3.1.2. If y sentencias compuestas
3.1.3. Operadores relacionales: <,
<=, >, >=,
==, !=
3.1.4. If-else
3.1.5. Operadores lógicos:
&&, ||, !
3.1.6. Cómo funciona realmente la
condición
en un
“if”
3.1.7. El peligro de la asignación en
un
“if”
3.1.8. Introducción a los diagramas de
flujo
3.1.9. Operador condicional: ?
3.1.10. Switch
3.2. Estructuras repetitivas
3.2.1. While
3.2.2. Do ... While
3.2.3. For
3.3. Sentencia break: termina el bucle
3.4. Sentencia continue: fuerza la siguiente
iteración
3.5. Sentencia goto
3.6. Más sobre diagramas de flujo. Diagramas de
Chapin.
4. Entrada/salida básica
4.1. printf
4.2. scanf
4.3. putchar
4.4. getchar
5. Arrays y estructuras
5.1. Conceptos básicos sobre tablas
5.1.1 Definición de una tabla y acceso
a los datos
5.1.2. Valor inicial de una tabla
5.1.3. Recorriendo los elementos de una tabla
5.2. Cadenas de caracteres
5.2.1. Definición. Lectura desde
teclado
5.2.2. Cómo acceder a las letras que
forman una
cadena
5.2.3. Longitud de la cadena
5.2.4. Entrada/salida para cadenas: gets, puts
5.2.5. Asignando a una cadena el valor
de otra:
strcpy, strncpy
5.2.6. Comparando cadenas: strcmp
5.2.7. Otras funciones de cadenas.
sprintf
5.2.8. Valor inicial de una cadena de
texto
5.3. Tablas bidimensionales
5.4. Arrays indeterminados
5.5. Estructuras
5.5.1 Definición y acceso a los datos
5.5.2 Arrays de estructuras
5.5.3 Estructuras anidadas
6. Manejo de ficheros
6.1. Escritura en un ficheros de texto
6.2. Lectura de un fichero de texto
6.3. Lectura hasta el final del fichero
6.4. Ficheros con tipo
6.5 Leer y escribir letra a letra
6.6 Modos de apertura
6.7 Ficheros binarios
6.8 Ejemplo: copiador de ficheros
6.9 Acceder a cualquier posición de un fichero
6.10 Ejemplo: leer información de un fichero BMP
6.11. Ficheros especiales 1: la impresora
6.12. Ficheros especiales 2: salida de errores
7. Introducción a las funciones
7.1. Diseño modular de programas:
Descomposición
modular
7.2. Conceptos básicos sobre funciones
7.3. Parámetros de una función
7.4. Valor devuelto por una función
7.5. El valor de retorno “void”. El
valor de retorno
de “main”
7.6. Variables locales y variables globales
7.7. Los conflictos de nombres en las variables
7.8. El orden importa
7.9. Algunas funciones útiles
7.9.1. Números aleatorios
7.9.2. Funciones matemáticas
7.9.3. Pero casi todo son funciones…
7.10. Recursividad
7.11. Cómo interrumpir el programa
8. Cómo depurar los programas
8.1. Conceptos básicos sobre depuración
8.2. Ejemplos de algunos entornos
9. Punteros y gestión dinámica de memoria
9.1. ¿Por qué usar estructuras
dinámicas?
9.2. ¿Qué son los punteros?
9.3. Repasemos con un ejemplo sencillo
9.4. Aritmética de punteros
9.5. Punteros y funciones: parámetros por
referencia
9.6. Punteros y arrays
9.7. Arrays de punteros
9.8. Punteros y estructuras
9.9. Parámetros de “main”
9.10. Estructuras dinámicas habituales 1: las
listas
enlazadas 9.11. Estructuras dinámicas
habituales 2: los árboles binarios 9.12.
Indirección múltiple 9.13. Un
ejemplo: copiador de ficheros en una pasada
10.
Bibliotecas de uso frecuente 10.1. Llamadas al
sistema: system 10.2. Temporización
10.3. Pantalla y teclado con Turbo C 10.4. Acceso a
pantalla en Linux: ncurses.h
11. Otras
características avanzadas de C 11.1
Operaciones con bits 11.2 Directivas del
preprocesador 11.2.1. Constantes
simbólicas: #define 11.2.2
Inclusión de ficheros:
11.2.3. Compilación condicional: #ifdef, #endif 11.2.4. Otras directivas 11.3. Programas a partir de varios fuentes 11.3.1. Creación desde la línea de comandos 11.3.2. Introducción al uso de la herramienta Make 11.3.3. Introducción a los “proyectos” 11.4 Uniones y campos de bits 11.5. El operador coma 11.6. Enumeraciones 11.7. Definición de tipos
|
| Últimos
cambios
en esta página |
|
|
31/Octubre/2006 |
Nueva actualización del curso de C (0.22). |
| 11/Agosto/2006 |
Añadido un enlace a una serie de ejercicios de C en Linux, creados por Chuidiang. |
|
07/Julio/2006 |
Nueva
actualización
del curso
de
C (0.21), pre-definitiva. |
|
09/Junio/2006 |
Nueva
actualización
del curso
de
C (0.20). Disponible un curso de gráficos en C usando SDL. |
| 08/Mayo/2006 |
Nueva
actualización
del curso
de
C (0.19). Disponible una nueva versión del compilador Open
Watcom C++, la 1.5. |
| 29/Abril/2006 |
Comienza una revisión
de mi introducción a C++. Reorganizada la lista de
cursos,para que sean
más fáciles de encontrar según el
lenguaje. |
| 27/Abril/2006 |
Nueva
actualización
del curso
de
C (0.18). Reorganizada la lista de compiladores,para que sean
más fáciles de encontrar según el
sistema
operativo. Añadido un
enlace a la versión "Express" de
Visual C# 2005 parece poder descargarse libremente desde la
página Web de Microsoft. |
| 13/Abril/2006 |
Disponibles 9
fuentes de ejemplo para descargar (que poco a poco
irán siendo muuuchos más). |
| 05/Abril/2006 |
Nueva
actualización
del curso
de
C (0.17). La versión "Express" de
Visual C++ 2005 parece poder descargarse libremente desde la
página Web de Microsoft -> añadido un
enlace. |
| 22/Marzo/2006 |
Nueva
actualización
del curso
de
C (0.16). | | 19/Marzo/2006 |
Nueva
actualización
del curso
de
C (0.15).
Añadidos enlaces a otros dos cursos de C#. |
| 27/Febrero/2006 |
Una
versión
en formato HTML de mi curso de C se podrá consultar en
línea en AprendeAProgramar.com.
Incluido en enlace correspondiente. |
| 17/Febrero/2006 |
Nueva
actualización
del curso
de
C (0.14). Añadido otro curso de C en español, un
seminario de C y otro de C++, y una referencia breve de C. |
| 11/Febrero/2006 |
Nueva
actualización
del curso de
C (0.13). | | 25/Enero/2006 |
Nueva
actualización
del curso de C (0.12). Está disponible para descarga la
versión 1.4 de OpenWatcom y la 8.47 de Digital Mars. |
| 15/Enero/2006 |
Nueva
actualización
del curso de C (0.11) | | 01/Diciembre/2005 |
Nueva
actualización
del curso de C (0.09) | | 15/Noviembre/2005 |
Nueva
actualización
del curso de C (0.08) | | 08/Noviembre/2005 |
Nueva
actualización del curso de C (0.07) |
| 24/Octubre/2005 | Nueva
actualización del curso de C (0.05) |
| 02/Octubre/2005 |
Incluida la
nueva versión de mi curso de
C, más progresiva, en formato PDF. |
| 07/Agosto/2005 |
Revisados
muchos de los enlaces. Corregido
el de C++ Builder y algún
otro. Añadido un
enlace a MinGW Developer Studio y otro a Sharp Develop. Aplicado a esta
página
el
nuevo cambio de imagen de la Web. | | 04/Noviembre/2004 |
Incluidos enlaces
sobre C#: cursos,
compiladores (Mono) y
otros. | | 13/Enero/2004 |
La
versión convertida a PDF
de mi curso de C no se podía descargar, por limitaciones del
servidor actual,
que elimina los ficheros de más de 1 Mb de tamaño
->
desglosada
en dos mitades. | | 02/Abril/2003 |
Disponible
una conversión
a formato PDF de mi curso de C y C++ (2.27h), sólo
recomendable
para quien no use Windows. | | 05/Enero/2003 | Nueva
versión de mi curso
de C y C++ (2.27h), con ejemplos de cómo crear
gráficos
con
DJGPP y las librerías GRX o Allegro, notas sobre el
compilador
MinGW,
y algún otro apartado ampliado. |
| 08/Agosto/2002 |
Incluido un
curso de Visual C en
español, en formato PDF, creado por Daniel Villahermosa. |
| 12/Abril/2002 |
Enlace a
otro compilador de C (no
de C++) para Windows: LCC-Win32. | | 29/Marzo/2002 |
Nueva
versión de mi curso
de C y C++ (2.26h). Añadido un nuevo enlace, que permite
saber
los
cambios realizados entre versiones del curso. |
| 16/Febrero/2002 |
Se puede
descargar el HelpPC, una
referencia en inglés sobre C, ensamblador, hardware, etc. |
| 08/Febrero/2002 |
Añadido
un curso de C en
español creado por Angel Salas. |
| 09/Enero/2002 |
Nueva
versión del curso de
C (2.25h), que incluye ya todos los temas que antes sólo
tenía
la versión ampliada. | | Otros
cambios anteriores en toda la Web |
|
|