pp 25/10/2005 Tema 4 ¿Cómo se hace un programa informático? Fundamentos de la Programación Conocimientos y Habilidades Después de este tema, el alumno debería ser capaz de: Módulo I: Conceptos Básicos • Tema 1. ¿Qué es un ordenador? • Tema 2. ¿Cómo se representan los datos en un ordenador? • Tema 3. ¿Qué es un lenguaje de programación? • Tema 4. ¿Cómo se hace un programa informá informático? • Tema 5. Tipos de datos y operadores básicos • Tema 6. Sentencias de Control Cuestiones a resolver • Crear una aplicación de Bienvenida Conocer la estructura de un programa en C • Conocer el IDE MS Visual C++ Conocer e identificar los elementos de un programa en lenguaje C • Aprender editar, compilar, montar y ejecutar una aplicación Hacer sencillas aplicaciones en C Construcción de un programa El lenguaje C • El lenguaje C fue desarrollado en 1972 por Denis Ritchie, de los laboratorios Bell de AT&T, y se utilizó para escribir y mantener el sistema operativo UNIX. • Lenguaje de “Alto Nivel”, con muchas de las facilidades propias de los lenguajes de “Bajo Nivel” • C es un lenguaje de propósito general que se puede utilizar para escribir cualquier tipo de programa. Escriba el título aquí 1 pp 25/10/2005 El lenguaje C Lenguaje C++ • Conjunto de instrucciones relativamente pequeño, pero permite funciones de biblioteca. • Desarrollado a partir del lenguaje C, en 1985, por Bjarne Stroustrup (Labs. Bell de AT&T) • Favorece la Programación Estructurada y el Diseño Modular • C++ carácter evolutivo de las transformaciones de C. • Lenguaje portable • Aporta características de la programación orientada a objetos, pero mantiene las buenas cualidades de C • C está orientado hacia las funciones • Es un lenguaje híbrido (estructurado + orientado a objetos) Estructura General de un programa Un programa C se compone de una ó mas funciones Función: conjunto de instrucciones que realizan una ó más acciones Requisitos de la Aplicación Desarrollar una aplicación sencilla "bienvenida" que muestre en la pantalla el saludo "Que pasa neng!" Función obligatoria: main() Departamento de Teoría de la Señal y Comunicaciones e Ingeniería Telemática Demo • Indican al compilador que las funciones definidas por el usuario o variables así declaradas son comunes a todas las funciones de su programa • La zona de declaraciones globales de un programa puede incluir declaraciones de variables y declaraciones de funciones (prototipos) • neng Neng.exe Escriba el título aquí Código Fuente #include <stdio.h> /* El primer programa */ int main() { printf(“Que pasa neng!”); return 0; } 2 pp 25/10/2005 Estructura General de un programa en lenguaje C #include Directivas del preprocesador #define Macros del procesador Declaraciones globales • funciones • variables • prototipos de funciones Programa de saludo #include #include <stdio.h> <stdio.h> /* /* El El primer primer programa programa */ */ int main() int main() {{ printf("Que printf("Que pasa pasa neng!"); neng!"); return return 0; 0; }} Función principal main () main() { declaraciones locales sentencias } #include: directiva de preprocesador /*…*/ : indica comentario main(): función principal {} : encierran el "cuerpo" de la función main() printf: función de biblioteca return: sentencia que finaliza la ejecución del programa Definiciones de otras funciones func1 (...) { ... } ... Código Fuente #include <stdio.h> /* El primer programa */ int main() { printf(“Que pasa neng!”); return 0; } El Preprocesador de C El preprocesador es invocado de forma automática antes de la compilación Se utiliza para modificar el código fuente antes de ser realmente compilado Las más comunes son: o #define o #include Departamento de Teoría de la Señal y Comunicaciones e Ingeniería Telemática #include Indica al compilador que lea el archivo fuente indicado (archivos de cabecera) y que inserte su contenido en la posición donde aparece dicha directiva Los archivos de cabecera contienen código fuente C, y tienen extensión .h Sintaxis: #include <nombreArchivo.h> #include "nombreArchivo.h" Departamento de Teoría de la Señal y Comunicaciones e Ingeniería Telemática Escriba el título aquí #define Se utiliza para realizar la sustitución de macroinstrucciones Adecuado para definir constantes El preprocesador reemplaza cada aparición del símbolo nombre en el archivo fuente con el texto reemplazante Sintaxis: #define nombre texto_reemplazante Ejemplos: #define PI 3.14159 #define PI 0.14159 + 3.0 // ¡OJO! Departamento de Teoría de la Señal y Comunicaciones e Ingeniería Telemática 3 pp 25/10/2005 Código Fuente #include <stdio.h> /* El primer programa */ int main() { printf(“Que pasa neng!”); return 0; } Comentarios en C Estilo C Estándar: /* ... */ /* Programa: Programador: Descripción: Fecha creación: Revisión: */ PRUEBA1.C Guillermo Puertas Primer programa C 21 junio 2001 Ninguna En línea de programa: Comentarios • Cualquier información que se añade a un archivo fuente para proporcionar información de cualquier tipo • El compilador ignora los comentarios • El uso de comentarios es totalmente opcional, aunque muy recomendable • Es buena práctica de programación comentar el programa en la parte superior de cada archivo fuente Código Fuente #include <stdio.h> /* El primer programa */ int main() { printf(“Que pasa neng!”); return 0; } Printf("Programa Demo“); /* sentencia de salida */ Función main(...) • La ejecución de todo programa C comienza en una función main() • Un programa se compone de una sola función main(), y un conjunto de funciones. • La sentencia return indica que el programa ha finalizado Escriba el título aquí Código Fuente #include <stdio.h> /* El primer programa */ int main() { printf(“Que pasa neng!”); return 0; } 4 pp 25/10/2005 Funciones de salida, printf() Funciones de salida, printf() • Sintaxis: fprintf(".......", arg1, arg2, ...); • Ejemplo: fprintf("Hola mundo\n"); fprintf("%d", var); Secuencia de escape \n \t printf("%c%c%c%c%c%c", 84, 69, 76, 69, 67, 79); /* Esta línea escribe TELECO */ \a Descripción newline. Posiciona el curso de pantalla al principio de la línea siguiente Tabulador. Mueve el cursor de pantalla hasta la siguiente marca de tabulación Beep. Produce un sonido. Palabras reservadas Palabras reservadas • Característica del lenguaje C asociada con algún significado especial • No se pueden utilizar como nombres de identificador, objeto o función asm else namespace switch auto enum new template bool explicit operator this break extern private throw case float protected try catch for public typedef char friend register union class goto return unsigned const if short virtual continue inline signed void default int sizeof volatile delete long static wchar_t do mutable struct while double Signos de puntación y separadores • Todas las sentencias deben terminar con punto y coma. • Los signos de puntuación son: –! % ^ & * ( ) - + = { } ~ –[ ] \ ; ' : < > ? , . / " • Separadores: espacios en blanco, tabulaciones, retornos de carro y avances de línea. Escriba el título aquí Hemos aprendido • Estructura general de un programa en C • Elementos de un programa en C: – Comentarios – Preprocesador – Funciones – Identificadores – Palabras reservadas 5 pp 25/10/2005 Próximamente... ¿Tipos de Datos y Operadores Básicos Departamento de Teoría de la Señal y Comunicaciones e Ingeniería Telemática Escriba el título aquí 6