Los Temas más votados de C/Visual C
Listado de los Temas más votados desde su publicación.
En este tutorial vamos a detallar el proceso de creación de una ventana Windows típica con todos sus elementos, para ello, explicaremos paso a paso cada una de las instrucciones que se utilizan en la API de Windows. La API de Windows es un conjunto de instrucciones (aproximadamente 600) que permiten crear una ventana Windows sencilla y la mayoría de los componentes clásicos sin casarse con alguna tecnología propietaria como MFC de Microsoft u OWL de Borland.
Tema en el que se detalla con gran profundidad el funcionamiento de los punteros en C.
Nociones elementales
- Que es una variable?
- Que es un array?
- Que es un puntero?
- Tipos definidos por el programador
- Clases
Punteros I
- Declaracion e inicializacion
- Asignacion erronea: "Cannot assign..."
- Opciones de inicializacion
- Inicializacion mediante memoria dinamica
- Desreferenciacion ("Indirection")
- Concepto
- El caso especifico de un puntero a char
- Asignacion de punteros
Punteros II
- Punteros a 'void'
- Punteros y 'const'
- 1-Puntero constante
- 2-Puntero a constante
- Puntero nulo (Null pointer)
- Puntero a puntero
Punteros III
- Puntero a funcion
- Puntero a objeto
- El puntero implicito 'this'
Utilidad de los punteros
- Aritmetica de punteros
- Itinerar en un array
- Mapear localidades de memoria
- Paso de parametros entre funciones
- Reserva de memoria dinamica
Problemas con punteros I
- Punteros no inicializados
- Errores con punteros a literales de cadena
- El mensaje "Null pointer assignment"
- "Dangling pointers"
Problemas con punteros II
-Problemas relacionados con memoria dinamica
- 1-Memoria no liberada
- 2-Operar con un objeto ya borrado
- Datos miembros que son punteros y copia de objetos
ANEXO 1: Cadenas de caracteres 'estilo C'
- Que es una 'cadena tipo C'?
- Arrays y cadenas de caracteres
- Ejemplos de funciones standard
- memset
- strset
- Sobreescritura de variables
ANEXO 2: Memoria
- Modelos de memoria
- Rol de la STACK (pila)
- Gestion de memoria en C++
- 'R-value' y 'L-value'
Los ejemplos de programas que siguen ilustran características del lenguaje C. Se trata de programas simples que pueden examinarse como enlaces en esta página, pero que también pueden ser compilados directamente, ya que sus archivos se mantienen con extensión .c en el directorio de esta página.
Realmente me encanta este lenguaje y aunque he hecho muchas cosas en otros lenguajes creo que gracias a él he aprendido a ser mucho más ordenado y ha cometer menos errores de los que podría haber cometido, y claro, tienes que aprender a ser muy cuidadoso si quieres que las cosas funcionen en C, C no es para todos, es para la élite.
Fue hecho por hackers y para hackers. Las fuerzas especiales de la milicia, ellos no necesitan que el lenguaje desenrede sus enredos. Ellos simplemente no hacen enredos. Bienvenido a C-lan
Muy a menudo necesitamos almacenar cierta cantidad de datos de forma más o menos permanente. La memoria del ordenador es volatil, y lo que es peor, escasa y cara. De modo que cuando tenemos que guardar nuestros datos durante cierto tiempo tenemos que recurrir a sistemas de almacenamiento más económicos, aunque sea a costa de que sean más lentos.
Durante la historia de los ordenadores se han usado varios métodos distintos para el almacenamiento de datos. Al principio se recurrió a cintas de papel perforadas, después a tarjetas perforadas. A continuación se pasó al soporte magnético, empezando por grandes rollos de cintas magnéticas abiertas.
Hasta aquí, todos los sistemas de almacenamiento externo eran secuenciales, es decir, no permitían acceder al punto exacto donde se guardaba la información sin antes haber partido desde el principio y sin haber leído toda la información, hasta el punto donde se encontraba la que estabamos buscando.
Ejercicios resueltos de ANSI C en formato zip. Contiene pdf con los ejercicios y sus correspondientes archivos .c
Especificación detallada junto con todas sus características de los arboles-B
Colección de ejemplos realizados en C. Explicación de todas las formas para utilizar punteros.
Decidí crear esta guía porque he notado que la mayoría de los problemas que tienen las personas al hacer programas complejos en C se debe al mal manejo de los apuntadores.
Espero que quienes lean esta guía aprendan a manejarlos adecuadamente y les ayude a realizar sus programas con menos dificultades al centrarse únicamente en el funcionamiento del programa dejando de gastar tiempo y esfuerzo luchando contra los apuntadores.
Hemos observado que mucha gente, especialmente en la lista, usa los compiladores de Borland. Aparte de usar este compilador, también existe una demanda para saber acerca de las librerías no estándar ofrecidas por Borland. Tenemos que advertir que estas librerías no son estándar, por lo que los programas que hagan uso de ellas no serán necesariamente portables a otras plataformas ni a otros compiladores.
Sin embargo, estas páginas podrán usarse como consulta para ver el funcionamiento de cada función individual. Para que la consulta sea más fácil, se incluye un índice alfabético de funciones, y un índice de ficheros de cabecera.
Como se ha hecho hasta ahora en el resto de los cursos, se irán añadiendo y actualizando páginas a medida que estén preparadas, de modo que no sea necesario esperar a que todo esté terminado para empezar las consultas.
Esta pagina no es un lujo, ni un vicio, sino una necesidad. Tras años de aprender C a golpe de practicas (ISO, XC, STD, SPD, AAD, CASO, SAC, EISO ...) nos hemos decidido a realizar esta pagina que esperamos os sea de gran ayuda en la realizacion de vuestras practicas en C.
Falta por aclarar que esta pagina no esta dedicada al publico en general, sino a cualquiera que empiece a programar en C y ya tenga nociones de programacion.
Las clases están agrupadas por temas según el orden indicado en el indice del artículo (Abstracción, estructuras lineales, árboles, búsqueda, colecciones no ordenadas, estructuras no lineales, grafos). Si quieres ver el interfaz de alguna clase selecciona el tema correspondiente en dicho indice.
Explicación de los tipos de datos existentes en C. En formato doc.
Para procesar información en un computador es necesario hacer una abstracción de los datos que tomamos del mundo real -abstracción en el sentido de que se ignoran algunas propiedades de los objetos reales, es decir, se simplifican-. Se hace una selección de los datos más representativos de la realidad a partir de los cuales pueda trabajar el computador para obtener unos resultados. Cualquier lenguaje suministra una serie de tipos de datos simples, como son los números enteros, caracteres, números reales. En realidad suministra un subconjunto de éstos, pues la memoria del ordenador es finita. Los punteros (si los tiene) son también un tipo de datos. El tamaño de todos los tipos de datos depende de la máquina y del compilador sobre los que se trabaja. En principio, conocer la representación interna de estos tipos de datos no es necesaria para realizar un programa, pero sí puede afectar en algunos casos al rendimiento. En este artículo verás todo lo anterior reflejado con arboles
ISAPI significa "Internet Server API", o sea, la API para servidores de internet. Recordemos que existe una API, (Application Programming Interface) para diversos productos, por ejemplo, está la API de Windows, la API de DirectX, la API del reproductor multimedia de Windows, etc. Entonces, a la API para los servidores de internet se le suele llamar ISAPI, (son un conjunto de funciones).
Colección de ejercicios y prácticas resueltas en C. En formato doc. Contiene 99 páginas.