Topicos Selectos De Programacion
Enviado por PedroFF • 22 de Septiembre de 2013 • 7.728 Palabras (31 Páginas) • 955 Visitas
Tópicos selectos de Programación
Unidad Temas Subtemas
1 Tipos de datos definidos por el usuario. 1.1 Agregación de datos (struct).
1.2 Uniones de datos (union).
1.3 Registros variantes.
1.4 Tipos de datos enumerados.
1.5 Manejo de bits.
1.6 Campos de bits.
1.7 Operaciones con Bits ( AND, OR, NOT, XOR).
2 Creación de componentes y librerías dinámicas 2.1 Creación de componentes.
2.2 Creación de librerías dinámicas.
3 Programación concurrente multihilo. 3.1 Concepto de Hilo.
3.2 Comparación de un programa de flujo único contra uno de flujo múltiple.
3.3 Creación y control de hilos.
3.3.1 Atributos de hilos.
3.3.2 Creación e Inicialización de hilos.
3.3.3 Arranque de hilos.
3.3.4 Manipulación de hilos.
3.3.5 Suspensión de hilos.
3.3.6 Parada de hilos.
3.4 Sincronización de hilos.
3.4.1 Mutex.
3.4.2 Semáforos.
3.4.3 Barreras (Barrier).
4 Interfaz Gráfica de Usuario (GUI). 4.1 Creación de interfaz gráfica para usuarios.
4.1.1 Librería de interfaz gráfica (API’s).
4.1.2 Aplicaciones GUI.
4.2 Computación gráfica.
4.2.1 Área de dibujo.
4.2.2 Primitivas de dibujo (línea, arco, circulo, colores, rellenos, imágenes).
5 Multimedia. 5.1 Introducción a la multimedia.
5.2 Componentes de un sistema multimedia.
5.3 Formatos de archivo multimedia.
5.4 Creación y manipulación de objetos con formatos de archivo gráfico comunes (GIF, TIFF, JPEG, WMF).
5.5 Creación y manipulación de objetos con formatos de animación y video comunes (AVI, QUICKTIME, MPEG, GIF animado).
5.6 Creación y manipulación de objetos con formatos de audio (compresión de sonido, formato MIDI, MP3).
5.7 Integración de los elementos multimedia.
5.8 Interactividad.
6 Programación de puertos e interrupciones. 6.1 Interrupciones.
6.2 Generalidades de los puertos.
6.3 Puerto serial y sus variantes.
6.3.1 USB.
6.3.2 Infrarrojo.
6.3.3 Fire wire.
6.4 Paralelo y sus variantes.
6.5 Interrupciones que intervienen en cada puerto.
6.5.1 Direcciones bases.
6.5.2 Registros.
6.6 Envío y recepción de los datos.
6.7 Ejemplos de programación entre puertos y dispositivos.
Unidad 1. Tipos de datos definidos por el usuario.
1.8 Agregación de datos (struct).
Estructuras
En C una estructura es una colección de variables que se referencian bajo el mismo nombre. Una estructura proporciona un medio conveniente para mantener junta información que se relaciona. Una definición de estructura forma una plantilla que se puede usar para crear variables de estructura. Las variables que forman la estructura son llamados elementos estructurados.
Generalmente, todos los elementos en la estructura están relacionados lógicamente unos con otros. Por ejemplo, se puede representar una lista de nombres de correo en una estructura. Mediante la palabra clave struct se le indica al compilador que defina una plantilla de estructura.
struct direc
{
char nombre[30];
char calle[40];
char ciudad[20];
char estado[3];
unsigned int codigo;
};
Con el trozo de código anterior no ha sido declarada ninguna variable, tan sólo se ha definido el formato. Para declarar una variable, se hará como sigue:
struct direc info_direc;
Se pueden declarar una o más variables cuando se define una estructura entre ) y ;. Por ejemplo:
struct direc
{
char nombre[30];
char calle[40];
char ciudad[20];
char estado[3];
unsigned int codigo;
} info_direc, binfo, cinfo;
observar que direc es una etiqueta para la estructura que sirve como una forma breve para futuras declaraciones. Como en este última declaración se indican las variables con esta estructura, se puede omitir el nombre de la estructura tipo.
Las estructuras pueden ser también preinicializadas en la declaración:
struct direc info_direc={"Vicente Fernandez","Fantasia 2000","Dorado","MMX",12345};
Para referenciar o accesar un miembro (o campo) de una estructura, C proporciona el operador punto ., por ejemplo, para asignar a info_direc otro código, lo hacemos como:
info_direc.codigo=54321;
7.1.1 Definición de nuevos tipos de datos
Se señalo previamente (sección 2.4.1) que typedef se puede usar para definir nuevos nombres de datos explicítamente, usando algunos de los tipos de datos de C, donde su formato es:
typedef <tipo> <nombre>;
Se puede usar typedef para crear nombres para tipos más complejos, como una estructura, por ejemplo:
typedef struct direc
{
char nombre[30];
char calle[40];
char ciudad[20];
char estado[3];
unsigned int codigo;
} sdirec;
sdirec info_direc={"Vicente Fernandez","Fantasia 2000","Dorado","MMX",12345};
en este caso direc sirve como una etiqueta a la estructura y es opcional, ya que ha sido definido un nuevo tipo de dato, por lo que la etiqueta no tiene mucho uso, en donde sdirec es el nuevo tipo de datos e info_direc es una variable del tipo sdirec, la cual es una estructura.
Con C también se pueden tener arreglos de estructuras:
typedef struct direc
{
char nombre[30];
char calle[40];
char ciudad[20];
char estado[3];
unsigned int codigo;
} info_direc;
info_direc artistas[1000];
por lo anterior, artistas tiene 1000 elementos del tipo info_direc. Lo anterior podría ser accesado de la siguiente forma:
artistas[50].codigo=22222;
Estructuras en C
1.-Una Estructura es una colección de variables simples, que pueden contener diferentes tipos de datos. Es un tipo de dato definido por el usuario. Son también conocidas como Registros. Ayudan a organizar y manejar datos complicados en programas debido a que agrupan diferentes tipos de datos a las que se les trata como una sola unidad en lugar de ser vistas como unidades separadas.
1.1-La Declaración de estructuras en programas C es un nuevo tipo de datos denominado tipo Estructura y declarar una variable de este tipo.
En la definición del tipo de estructura, se especifican los elementos que la componen así como sus tipos. Cada elemento es llamado miembro (similar a un campo de un registro).
...