Sie sind auf Seite 1von 10

Republica Bolivariana de Venezuela Ministerio del Poder Popular para la Educacin Aldea Universitaria Ciudad Angostura Misin Sucre

Profesora: Ingris Manaure

Participante: kizzy hernandez C.I. 20.772.822

Ciudad Bolvar, Abril de 2012.

TIPOS DE DATOS EN C

El tipo de una variable (contenedor de informacin) indica que tipo de informacin puede contener y qu operaciones puede realizar. Existen 5 tipos simples en C: - char (carcter), ocupa 8 bits (1 bytes) - int (entero), ocupa 16 bits (2 bytes) - float (coma flotante), ocupa 32 bits (4 bytes) - double (coma flotante doble precisin) ocupa 64 bits (8 bytes) - void (sin valor). ocupa 0 bits (0 bytes) Los tipos bsicos (excepto void) pueden tener modificadores: MODIFICADORES DE TIPO: Preceden al tipo de dato (excepto a void), para modificar el valor del tipo base Nos permiten ajustar los valores de las variables a nuestras necesidades. Son los siguientes: - signed (por defecto): Puede tomar valores positivos y negativos - unsigned: Indica que slo puede tomar valores positivos, - short (por defecto): Indica que la variable tiene rango corto. - long: Indica que la variable tiene rango o tamao doble

SIN VALOR (void), se utilizan para: Indicar que una funcion no devuelven ningn valor Indicar que una funcin no tiene parmetros.

pequeos. Por defecto pueden ser positivos o negativos, aunque podemos forzar que slo sean positivos (unsigned). Posibilidades:

- char 28bits = [-128, 127] = [-27, 27-1]

-1]

pueden ser positivos o negativos, aunque podemos obligar a que slo puedan ser positivos (unsigned). Posibilidades: Pueden ocupar 2bytes: -1]

- int 216bits = [-32768, 32767] = [-215, 215-1] Pueden ocupar 4bytes: 232-1]

- long int 232bits = [-2147483648, 2147483647] = [-231, 231-1] componente entero y uno fraccionario. Posibilidades: Pueden ocupar 4bytes: float n que los float.

Si en tiempo de ejecucin se asigna un valor mayor del permitido a una Overflow (valor excesivo). Provoca un error en el resultado Ejemplo: unsigned char a; Reserva en memoria 8 bits para la variable a. Como es unsigned no hay bits de signo y los 8 bits se usan para guardar el n. El rango de valores es: 0 al 255 (0 a 28-1) a = 300; 300 en binario es: 100101100 Solo almacena 8 bits: 00101100 El equivalente decimal es: 44 El n que almacena es 44 en vez de 300!

a=a+5 El resultado que devolvera seria 49 en vez de 305!

CONSTANTES Y VARIABLES

VARIABLES: Es un contenedor de informacin (datos), y su valor se encuentra almacenado en memoria. Para referirnos a los datos contenidos en la memoria utilizamos su es prctico, porque una direccin no es significativa de necesarios los identificadores Nombre simblico para referirse a variables, funciones y cualquier otro objeto

defnido por el usuario en un programa. Todas las variables o funciones que usemos deben ser declarados y deben tener un nombre (identificador): al comienzo del programa se deben indicar los nombres de las variables y el tipo de los datos que almacenan Porque se debe hacer reserva de memoria para cada variable, y establecer la correspondencia entre nombre de variable y posicin de memoria asignada. Un identificador debe cumplir las siguientes normas: 1. Longitud mxima: 32 caracteres. Debe comenzar por una letra o un smbolo de subrayado (_) seguido por letras, nmeros o subrayado. Bien: cont, prueba25, a_3 Mal: 1cont, hola!, b...total 2. C distingue entre maysculas y minsculas: a y A son <>. 3. No puede llamarse igual que una palabra clave, o que una funcin. 4. Es aconsejable elegir nombres que sean significativos. No aconsejable: float funcion1(int a, int b) Si aconsejable: float media (int teoria, int prctica)

Declaracin de variables
Toda variable debe ser declarada para poder ser usada. Hay que indicar: el tipo de los valores que podr contener. Lo que determinar qu cantidad de memoria habr que reservar. el nombre de la variable.

Ejemplo

La forma general de declaracin es la siguiente: [Modif.tipo] <tipo> {<identificador> [= valor],...} ; donde: modificador tipo: signed (por defecto), unsigned, long, short. tipo de dato: char, int, float, double, void. identificador: nombre con el que nos vamos a referir a la variable. valor: Podemos inicializar la variable en la misma declaracin. [ ], indica que es opcional. < >, indica que es obligatori { } , indica que se puede repetir varias veces, separando con comas

Toda declaracin debe finalizar con un punto y coma (;).

CONSTANTE: Es un valor que no puede cambiar durante la ejecucin de un asignacin. Pueden ser: De cualquiera de los tipos vistos para las variables (excepto void):

- Constantes enteras: 25, -126, 0x7FC (hexadecimal), 0767 (octal). - Constantes de Punto Flotante: 23.5, -0.05, -3.8E+17, 2.5E-4. - Constantes carcter: x, t, \n, \t. (Su valor es su cdigo ASCII).

Una cadena de caracteres (conjunto de caracteres encerrado entre ).

- Constantes de cadenas: constante de cadena, Bienvenidos. Hay dos formas de crear constantes: const y #define

const se usa para indicar que una variable no puede cambiar de valor.

const <tipo> <identificador> = valor; const int i = 10; /* la variable i la declaramos como constante */ i = 15; /* el compilador dar error ya que i es constante */ #define se usa para definir y eliminar constantes. #define nombre_constante expresion_constante donde: no termina en ";" - nombre_constante es un identificador (por convenio en maysculas). - expresion_constante. No puede contener variables, aunque si constantes. Una constante puede usarse para definir otras constantes: #define MENSAJE "Pulse una tecla para continuar \n" #define PI 3.1416 #define PIDOBLE (2 * PI)

El compilador sustituye en el fichero fuente la constante por su definicin: printf(MENSAJE); printf("\nEl area de radio 2 es %.2f \n", PIDOBLE * 2); Son sustituidas por el compilador por estas otras: printf("Pulse una tecla para continuar \n"); printf("\nEl area de radio 2 es %.2f \n", (2 * 3.1416) * 2);

El uso de constantes facilita la edicin de los programas: si queremos cambiar el mensaje, slo hay que cambiar la definicin de la constante MENSAJE: el compilador lo sustituye en todos los lugares donde MENSAJE aparece.

Operaciones bsicas de entrada-salida


El lenguaje C no dispone de sentencias de E/S para recibir/enviar datos del/al realizar dichas principio del programa el archivo stdio.h (Standard Input-Output), que nos permitir utilizar las funciones de E/S, y se har del siguiente modo: #include <stdio.h>

La depuracin est estrechamente relacionada con el concepto de calidad. En un sentido amplio, depurar un programa significa librarlo de errores e inconvenientes ms o menos graves, que con frecuencia es un proceso mucho mas costoso y arduo de lo que pudiera parecer a primera vista, en especial en programas grandes y complejos. Sin embargo, es imprescindible si queremos ofrecer al pblico un producto con un mnimo de calidad.

En general la depuracin de un programa se completa en tres fases; es un proceso en el que el producto se va acercando a la perfeccin (estar libre de errores e inconvenientes graves) mediante una serie de transformaciones sucesivas que responden al esquema de la figura.

En una primera fase, cuando ya el programa est prcticamente terminado, se somete a pruebas que podramos llamar "de laboratorio" para comprobar que todo marcha segn lo esperado y sin errores . Son pruebas que realiza el propio programador antes de dar a conocer el producto. Estas versiones se suelen denominar alfa y corresponden a un punto en que el programa todava est en fase de gestacin. En una versin alfa son de esperar todo tipo de errores y "cuelgues".

En una segunda fase, cuando el programador cree que su producto ya est suficientemente presentable y l no consigue encontrar ms errores aparentes (o los ya conocidos estn en proceso de depuracin), se procede a la distribucin del producto a una serie de probadores seleccionados ("beta testers"). Son las denominadas versiones beta, que aunque con errores espordicos, pueden tener un comportamiento ms o menos aceptable. Finalmente, en una tercera fase, con la informacin, opiniones y sugerencias de los "beta testers", se procede a lanzar la primera versin pblica v 1.0 del producto ("Release"), tambin denominadas versiones gamma. A partir de aqu, lo normal es que se vayan recogiendo las sugerencias, cuestiones y posibles errores que hayan pasado inadvertidos en las pruebas beta y sean reportados por los usuarios. Las soluciones a estos problemas, junto con las mejoras que se vayan incorporando, son implementadas en versiones sucesivas. Generalmente a partir de la versin 2.0 el producto se considera estable.

Ejemplo 1: Una forma sencilla de implementar estos semforos puede ser utilizar un define Como ejemplo construimos un programa que muestre el paso por diversos puntos: #include <iostream.h> #define testigo(punto) cout << "Alcanzado punto " #punto << endl; int main() { // ============== char* ptr = "El valor actual de X: "; int x = 0; testigo(1); cout << ptr << x++ << endl; testigo(2); cout << ptr << x++ << endl; testigo(3); cout << ptr << x++ << endl; testigo(4); }

Prueba

Una vez compilado el programa, este es sometido a pruebas a fin de determinar si resuelve o no el problema planteado en forma satisfactoria. Para ello le suministramos datos de prueba, como lo hicimos en la prueba de escritorio. El programa codificado y compilado no garantiza que funcione correctamente. Debe depurarse (librarse de errores de lgica o de ejecucin) realizando corridas de prueba continuas con datos y respuestas conocidas como lo hicimos en la prueba de escritorio, verificando todas las posibles alternativas del programa y sus respuestas y haciendo el mayor nmero de variantes con sus combinaciones, a fin de determinar si resuelve o no el problema planteado en forma satisfactoria. Las pruebas que se aplican al programa son de diversa ndole y generalmente dependen del tipo de problema que se est resolviendo. Comnmente se inicia la prueba de un programa introduciendo datos vlidos, invlidos e incongruentes y observando cmo reacciona en cada ocasin.

Los resultados obtenidos en las pruebas pueden ser cualquiera de los siguientes:

La lgica del programa est bien, pero hay errores sencillos, los cuales los corregimos eliminando o modificando algunas instrucciones o incluyendo nuevas. Hay errores ocasionados por fallas en la lgica, lo que nos obliga a regresar a las fases de Diseo y Codificacin para revisin y modificacin del diagrama. Hay errores muy graves y lo ms aconsejable es que regresemos a la fase 2 para analizar nuevamente el problema, y repetir todo el proceso. No hay errores y los resultados son los esperados. En este caso guardamos el programa permanentemente en un medio de almacenamiento. Puede ser necesario en la mayora de los casos retroceder a fases previas de desarrollo, revisar el algoritmo otra vez en caso de errores de anlisis y/o lgica (que son los ms difciles de detectar, a diferencia de los de sintaxis y semntica), realizar ajustes al cdigo y una serie de nuevas ejecuciones de prueba para que el programa funcione correctamente. Si no existen errores en el programa, puede entenderse la depuracin como una etapa de refinamiento en la que se ajustan detalles para optimizar el desempeo del programa.

Si se est automatizando alguna tarea manual, es comn poner a funcionar por un tiempo y de forma paralela ambas alternativas, a fin de comparar las salidas de ambas y adquirir confianza en la solucin automatizada.

Compilacin y ejecucin

Compilacin, el lenguaje de programacin seleccionado revisa que ya no halla errores en el cdigo fuente. Ejecucin, ejecutar el programa despus del ser compilado.

Das könnte Ihnen auch gefallen