• Me gusta
Apuntes1 elementos del lenguaje c
Próxima SlideShare
Cargando en...5
×

Apuntes1 elementos del lenguaje c

  • 883 reproducciones
Subido el

señala todos los elementos del lenguaje

señala todos los elementos del lenguaje

  • Full Name Full Name Comment goes here.
    ¿Está seguro?
    Tu mensaje aparecerá aquí
    Sea el primero en comentar
    Be the first to like this
Sin descargas

reproducciones

reproducciones totales
883
En SlideShare
0
De insertados
0
Número de insertados
0

Acciones

Compartido
Descargas
14
Comentarios
0
Me gusta
0

Insertados 0

No embeds

Denunciar contenido

Marcada como inapropiada Marcar como inapropiada
Marcar como inapropiada

Seleccione la razón para marcar esta presentación como inapropiada.

Cancelar
    No notes for slide

Transcript

  • 1. ELEMENTOS DEL LENGUAJE C++<br />CARACTERES DE C/C++.<br />Letras, dígitos y carácter de subrayado<br />Estos caracteres son utilizados para formar las constantes, los identificadores y las palabras clave de C.<br />Son los siguientes:<br />- Letras mayúsculas del alfabeto inglés:<br />A B C D E F G H I J K L M N O P Q R S T U V W X Y Z<br /> - Letras minúsculas del alfabeto inglés:<br />a b c d e f g h i j k l m n o p q r s t u v w x y z<br />- Dígitos decimales:<br />0 1 2 3 4 5 6 7 8 9<br />- Carácter de subrayado " _ " <br />El compilador C trata las letras mayúsculas y minúsculas como caracteres diferentes.<br />Por ejemplo los identificadores Pi y PI son diferentes.<br />Caracteres especiales y signos de puntuación<br />Este grupo de caracteres se utiliza de diferentes formas; por ejemplo, para indicar que un identificador es una función o un array; para especificar una determinada operación aritmética, lógica o de relación; etc.<br />Son los siguientes:<br />,.;:?‘“()[]{}<¡|/~+#%&^*-=><br />Secuencias de escape<br />Cualquier carácter de los anteriores puede también ser representado por una secuencia de escape. Una secuencia de escape está formada por el carácter seguido de una letra o de una combinación de dígitos. Son utilizadas para acciones como nueva línea, tabular y para hacer referencia a caracteres no imprimibles.<br />El lenguaje C tiene predefinidas las siguientes secuencias de escape:<br />SecuenciaNombre Ir al principio de la siguiente línea Tabulador horizontalvTabulador vertical (sólo para impresora)Retroceso (backspace) Retorno de carro sin avance de líneafAlimentación de página (sólo para impresora)aAlerta, pitido’Comilla simple”Comilla doblearra invertida (backslash)dddCarácter ASCII. Representación octalxddCarácter ASCII. Representación hexadecimal<br />Observe las secuencias de escape en funciones sprintf, printf, del lenguaje C.<br />TIPOS DE DATOS.<br />Para que el compilador C reconozca operaciones, es necesario especificar previamente el tipo de cada uno de los operandos que intervienen en la misma, así como el tipo del resultado.<br />Para ello, escribiremos una línea como la siguiente:<br />int dato1, dato2, resultado;<br />La declaración anterior le dice al compilador C que datol, dato2 y resultado son de tipo entero (int).<br />Hay dos clases de tipos: tipos fundamentales y tipos derivados.<br />Tipos fundamentales.<br />Enteros.<br />TIPORANGOTAMAÑOCARACTERISTICASchar-128 a 1271 byte Carácter, 0-127 Equivalente a un carácter del código ASCIIunsigned char0 a 2551 byte Carácter, Equivalente a la tabla de caracteres ASCII extendida.short-32,768 a 32,7672 bytesEntero cortounsigned short0 a 65,5352 bytesEntero corto, todos los positivosint_int32-2,147,483,647 a 2,147,483,6484 bytesEntero.(Maquinas actuales 4 bytes) (Maquinas antiguas 2 bytes)unsigned int0 a 4,294,967,2954 bytesEntero.(Maquinas actuales 4 bytes) (Maquinas antiguas 2 bytes)long-2,147,483,647 a 2,147,483,6484 u 8 bytesEntero largo, Dependiendo de la arquitectura de la máquinaunsigned long0 a 4,294,967,2954 u 8 bytesEntero largolong long_int649,223,372,036,854,775,808a9,223,372,036,854,775,8078 bytesEntero largo de 64 bitsunsigned long long0 a 18,446,744,073,709,551,6158 bytesEntero largo de 64 bitsenum--La declaración de un tipo enumerado es simplemente una lista de valores quepueden ser tomados por una variable de ese tipo.<br />Reales.<br />TIPORANGOTAMAÑOCARCTERISTICASfloat-3.4028238+38a-1.175494E-384 bytesDatos reales de precisión simple para números negativos1.175494E-38a3.4028238+38Datos reales de precisión simple para números positivosdouble-1.79769E+308a-2.22507E-3088 bytesDatos reales de precisión doble para números negativos2.22507E-308a1.79769E+308Datos reales de precisión doble para números positivoslong double-1.189731E+4932a-3.362103E-493210 bytesDatos reales de precisión doble formato largo para números negativos.3.362103E-4932a1.189731E+4932Datos reales de precisión doble formato largo para números positivos<br />void<br />El tipo void especifica un conjunto vacío de valores. En realidad void no es un tipo, aunque por la forma de utilizarlo si lo comparamos con la forma de utilizar los otros tipos fundamentales, se considera como tal. Por esta razón, no se puede declarar una variable de tipo void.<br />Ejemplo:<br />void a; /* error: no se puede declarar una variable de tipo void */<br />El tipo void se utiliza:<br />Para indicar que una función no acepta argumentos. En el siguiente ejemplo, void indica que la función fx no tiene argumentos.<br />double fx(void);<br />Para declarar funciones que no retornan un valor. En el siguiente ejemplo, void indica que la función fy no retorna un valor.<br />void fy(int, int);<br />Tipos derivados.<br />Los tipos derivados son construidos a partir de los tipos fundamentales. Algunos de ellos son punteros, estructuras, uniones, arrays y funciones.<br />NOMBRES DE TIPO<br />Utilizando la declaración typedef podemos declarar nuevos nombres de tipo de datos; esto es, sinónimos de otros tipos ya sean fundamentales o derivados, los cuales pueden ser utilizados más tarde para declarar variables de esos tipos. La sintaxis de typedef es la siguiente:<br />typedef declaración_tipo sinónimo[, sinónino]…<br />Por ejemplo, la sentencia siguiente declara el nuevo tipo ulong como sinónimo del tipo fundamental unsigned long.<br />typedef unsigned long ulong;<br />El siguiente ejemplo declara el tipo enumerado t_colores y define la variable color de este tipo.<br />enum colores<br />{<br />azul, amarillo, rojo, verde, blanco, negro<br />};<br />typedef enum cofores t_cofores;<br />int main ()<br />{<br />t_colores color;<br />return 0;<br />j<br />La declaración del tipo t_colores puede realizarse también así:<br />typedef enum colores<br />{<br /> azul, amarillo, rojo, verde, blanco, neqro<br />} t_colores;<br />o simplemente así:<br />typedef enum<br />{<br />azu1, amari11o, rojo, verde, blanco, negro<br />}t_colores;<br />PALABRAS CLAVE<br />autodoubleintstructbreakelselongswitchcaseenumregistertypedefcharexternreturnunionconstfloatshortunsignedcontinueforsignedvoiddefaultgotosizeofvolatiledoifstaticwhile<br />Las palabras clave deben escribirse siempre en minúsculas, como están<br />COMENTARIOS.<br />Un comentario es un mensaje a cualquiera que lea el código fuente. Añadiendo comentarios se hace más fácil la comprensión del programa. La finalidad de los comentarios es explicar el código fuente. Casi todos los compiladores C soportan comentarios estilo C y estilo C++.<br />Un comentario estilo C empieza con los caracteres /* y finaliza con los caracteres */. Estos comentarios pueden ocupar más de una línea, pero no pueden anidarse Por ejemplo,<br />int main() /* Función principal */<br />{<br />return 0;<br />}<br />Un comentario estilo C++ comienza con los caracteres // y termina al final de la línea. Estos comentarios no pueden ocupar más de una línea. Por ejemplo,<br />main() // Función principal<br />// Este es un ejemplo de cómo trabajar con comentarios<br />/* Un comentario es un mensaje a cualquiera que lea el código fuente<br />Añadiendo comentarios se hace más<br />fácil la comprensión del programa<br /> */<br />DECLARACION DE UNA VARIABLE<br />Una variable es un identificador que es un nombre cualquiera con un tipo de dato asignado puede cambiar a lo largo<br />de la ejecución de un programa. Cada variable de un programa, debe declararse antes de ser utilizada.<br />tipo identificador[, identificador] . . .<br />Ejemplo: int contador;<br /> char car;<br /> long numero;<br /> float resultado;<br />también así:<br />int contador;<br />int main ()<br />{<br />int dia, mes, anyoi;<br />float suma, preclo;<br />return 0;<br />}<br />INICIALIZACIÓN DE UNA VARIABLE<br />Si queremos que algunas o todas las variables que intervienen en un programa tengan un valor inicial cuando éste comience a ejecutarse, tendremos que inicializar dichas variables. Una variable puede ser inicializada, cuando se declara o, si está declarada dentro de un bloque, a continuación de ser declarada. A diferencia de las constantes, este valor puede cambiarse a 1o largo de la ejecución del programa.<br />Por ejemplo,<br />int contador = 1;<br />int main ( )<br />{<br />int dia = 20, mes = 9, año = 1995;<br />float suma = 0, precio;<br />precio = 100;<br />return 0;<br />}<br />No hay ninguna razón para no inicializar una variable. Tiene que saber que el compilador C inicializa automáticamente las variables globales a cero, pero no hace lo mismo con las variables locales. Las variables locales no son inicializadas por el compilador por lo que tendrán un valor, para nosotros, indefinido; se dice entonces que contienen basura (un valor que en principio no sirve).<br />EXPRESIONES NUMÉRICAS<br />Una expresión es una secuencia de operadores y operandos que especifican una operación determinada. Por ejemplo,<br />a++;<br />suma += c;<br />cantidad * precio;<br />7 * sqrt(a) – b / 2 ;<br />OPERADORES ARITMÉTICOS<br />Los operadores aritméticos los utilizamos para realizar operaciones matemáticas y<br />son los siguientes:<br />+ Suma. Los operandos pueden ser enteros o reales.<br />- Resta. Los operandos pueden ser enteros o reales.<br />* Multiplicación. Los operandos pueden ser enteros o reales.<br />/ División. Los operandos pueden ser enteros o reales. Si ambos operandos<br />son enteros el resultado es entero. En el resto de los casos el resultado es real.<br />% Módulo o resto de una división entera. Los operandos tienen que ser<br />enteros.<br />int main()<br />{<br />int a = 10, b = 3, c;<br />float x = 2.0f, y;<br />y = x + a; /*El resultado es 12.0f de tipo float */<br />c = a / b; /*El resultado es 3 de tipo int*/<br />c = a % b;/*El resultado es 1 de tipo int */<br />y = a / b; /*El resultado es 3 de tipo int, se convierte a float para asignarlo a y*/<br />c = x / y; /*El resultado es 0.666667 de tipo float, se convierte a int para asignarlo a c (c=10)*/<br />return 0;<br />}<br />Operadores lógicos<br />El resultado de una operación lógica (AND, OR y NOT) es un valor verdadero o falso (1 o 0). Por definición, un valor distinto de cero es siempre verdadero y un valor cero es siempre falso. Los operadores lógicos de C son los siguientes:<br />OperadorOperación&&AND. Da como resultado el valor lógico 1 si ambos operandos son distintos de cero. Si uno de ellos es cero el resultado es el valor lógico 0. Si el primer operando es igual a cero, el segundo operando no es evaluado.||OR. El resultado es 0 si ambos operandos son 0. Si uno de los operandos tiene un valor distinto de 0, el resultado es 1. Si el primer operando es distinto de cero, el segundo operando no es evaluado (el carácter I es el ASCII124).¡NOT. El resultado es 0 si el operando tiene un valor distinto de cero, y 1 en caso contrario<br />El resultado de una operación lógica es de tipo int. Los operandos pueden ser enteros, reales o punteros. Por<br />Ejemplo,<br />int main()<br />{<br />int p = 10, q = 0, r = 0;<br />r = p && q; // da como resultado 0<br />r = p || q; // da como resultado 1<br />r = !p; // da como resultado 0<br />return 0;<br />}<br />