Professional Documents
Culture Documents
Espacios en blanco
Tabulaciones horizontales o verticales
Nuevas lneas
Avances de pgina
Comentarios
Identificadores
Es un conjunto de caracteres alfanumricos que sirve para identificar las entidades
del programa (clases, funciones, variables, etc.) Los identificadores pueden ser
combinaciones de letras y dgitos. Cada lenguaje tiene sus propias reglas que
definen como pueden estar construidos.
En lenguaje C estas reglas son las siguientes:
1. Un identificador se forma con una secuencia de letras (minsculas de la a a
la z; maysculas de la A a la Z; y dgitos del 0 al 9).
2. El carcter guion bajo ( _ ) se interpreta como una letra ms.
3. Un identificador no puede contener espacios en blanco, ni otros caracteres
distintos de los citados, como por ejemplo (* , ; . : - +, ). Es importante
resaltar que las vocales no pueden llevar tilde ni diresis.
4. El primer carcter de un identificador debe ser siempre una letra o un guion
bajo, es decir, no puede ser un dgito.
5. Se hace distincin entre letras maysculas y minsculas.
6. El lenguaje C permite definir identificadores de hasta 31 caracteres de
longitud.
Ejemplos de identificadores vlidos son los siguientes:
tiempo, distancia1, caso_A, PI, velocidad_de_la_luz
Por el contrario, los siguientes nombres no son vlidos
1_valor, tiempo-total, dolares$, %final
En general es muy aconsejable elegir los nombres de las funciones y las variables
de forma que permitan conocer a simple vista qu tipo de variable o funcin
representan, utilizando para ello tantos caracteres como sean necesarios. Esto
simplifica la tarea de programacin, de correccin y mantenimiento de los
programas.
Palabras reservadas
El lenguaje C utiliza ciertos nombres para designar funciones, dichos nombres se
conocen como palabras reservadas. Una variable no puede llamarse igual que una
palabra reservada. Las palabras reservadas son identificadores predefinidos que
tienen un significado especial. En todos los lenguajes de programacin existe un
conjunto de palabras reservadas.
Estas palabras sirven para indicar al compilador que realice una tarea muy
determinada (desde evaluar una comparacin, hasta definir el tipo de una variable)
y tienen un especial significado para el compilador. A continuacin se presenta la
lista de las 32 palabras reservadas del lenguaje C, para las que ms adelante se
dar detalle de su significado.
auto
double
int
struct
2
break
case
char
const
continue
default
do
else
enum
extern
float
for
goto
if
long
register
return
short
signed
sizeof
static
switch
typedef
union
unsigned
void
volatile
while
Comentarios
Un comentario es una secuencia de caracteres utilizada para explicar el cdigo
fuente. C++ soporta comentarios estilo C y estilo C++. Un comentario estilo C
es una secuencia de caracteres cualesquiera encerrados entre los smbolos /* y
*/. Estos comentarios pueden ocupar ms de una lnea, pero no pueden anidarse.
Por ejemplo:
Int main() /* Funcin principal */
/* Este es un comentario
* que ocupa varias
* lneas.
*/
Signos de puntuacin
CARACTERES DE C
Los caracteres de C pueden agruparse en letras, dgitos, espacios en blanco,
caracteres especiales, signos de puntuacin y secuencia de escape.
Caracteres especiales y signos de puntuacin
Este grupo de caracteres se utiliza de diferentes formas; por ejemplo para indicar
que un identificador es una funcin o una matriz; para especificar una determinada
operacin aritmtica, lgica o de relacin; etc. Son los siguientes
, . ; : ? ( ) [ ] { } < ! | / \ ~ + # % & ^ * - = >
Archivos de cabecera
Los archivos de cabecera son archivos cuya extensin es .h, (ejemplo stdio.h), y
en principio uno incluye en su programa aquellos archivos necesario. Un archivo
de cabecera contiene declaraciones de variables y constantes, prototipos de
funciones, macros, etc. El lenguaje C ofrece una cantidad de importante de estos
archivos para que uno pueda escribir los programas y hacer uso de diversas
funciones que permitan, por ejemplo, ingresar datos por teclado, utilizar funciones
5
tratamiento
Tipos de datos
Los tipos de datos C se clasifican en: tipos primitivos y tipos derivados.
Tipos primitivos
Se les llama primitivos porque estn definidos por el compilador. Hay siete tipos
primitivos de datos que podemos clasificar en: tipos enteros y reales.
Tipos enteros: char, short, int, long y enum.
Tipos reales: float y doubl.
Cada tipo primitivo tiene un rango diferente de valores positivos y negativos.
El tipo de datos que se seleccione para declarar las variables de un determinado
programa depender dl rango y tipo de valores que vayan a almacenar cada una
de ellas y de si estos son enteros o fraccionarios. Los ficheros de cabecera limits.h
y float.h especifican los valores mximo y mnimo para cada tipo.
Cada tipo entero puede ser calificado por las palabras clave signed o unsigned. Un
entero calificado signed es un entero con signo (+ o -). Un entero calificado
unsigned es un valor entero sin signo, el cual es manipulado como un valor entero
positivos.
Si los calificadores signed y unsigned se utilizan sin un tipo entero especifico, se
asume el tipo int. Por este motivo, las siguientes declaraciones son equivalentes:
signed y:
/* es equivalente a */
signed char y:
Char
El tipo char se utiliza para declarar datos enteros comprendidos entre -128 y +127.
Un char se define como un conjunto de 8 bits de los cuales uno es para especificar
el signo y el resto para el valor; dicho conjunto de bits recibe el nombre de byte.
Segn lo expuesto en el prrafo anterior, el tipo unsigned char puede almacenar
valores en el rango 0 a 255, ya que ahora no es necesario emplear un bit para el
signo.
El siguiente ejemplo declara la variable car de tipo char a la que se le asigna el
carcter a como valor inicial. Las cuatro declaraciones siguientes son idnticas.
char
char
char
char
car
car
car
car
=
=
=
=
a;
97; /* la a es el decimal 97 */
0x61; /* la a es el hexadecimal 0061 */
0141; /* la a es el octal 0141 */
Short
El tipo short, abreviatura de signed short int, se utiliza para declarar datos enteros
comprendidos entre -32768 y + 32767. Un valor short se define como un dato de
16 bits de longitud, independientemente de la plataforma utilizada.
El tipo unsigned char puede almacenar valores en el rango de 0 a 65535, ya que
ahora no es necesario emplear un bit para el signo.
Int
El tipo int, abreviatura de signed int se utiliza para declarar datos enteros
comprendidos entre -2147483648 y + 2147483647. Un valor int se define como un
dato de 32 bit de longitud.
El siguiente declara e inicia tres variables a, b y c, de tipo int:
int a = 2000;
int b = -30;
int c = 0xF003; /* valor en hexadecimal */
El tipo unsigned int puede almacenar valores en el rango de 0 a 4294967295, ya
que ahora no es necesario emplear un bit para el signo.
En general, el uso de enteros de cualquier tipo produce un cdigo compacto y
rpido. As mismo, podemos afirmar que la longitud de un short es siempre menor
o igual que la longitud de un int.
Long
10
El tipo long se utiliza para declarar datos comprendidos entre los valores
-2147483648 y +2147483648. Un valor long se define como un dato de 32 bits de
longitud.
El siguiente ejemplo declara e inicia las variables a, b y c, de tipo long:
long a = -1L; /* L indica que la constante -1 es long*/
long b = 125;
long c = 0x1F00230F; /* valor en hexadecimal */
El tipo unsigned long puede almacenar valores en el rango de 0 a 4294967295, ya
que ahora no es necesario emplear un bit para el signo.
Podemos afirmar que la longitud de un int es menor o igual que la longitud de un
long.
Enum
La declaracin de un tipo enumerado es simplemente una lista de valores que
pueden ser tomados por una variable de este tipo. Los valores de un tipo
enumerado se representarn con identificadores, que sern las constantes del
nuevo tipo.
Los valores de las constantes que componen el tipo enumerado comienzan en
cero y aumentan de uno en uno segn se lee la declaracin de arriba abajo o de
izquierda a derecha.
Crear una enumeracin supone definir un nuevo tipo de datos denominado tipo
enumerado y declarar una variable de este tipo. La sintaxis es la siguiente:
enum tipo_enumerado
{
/* identificadores de las constantes enteras */
}
Donde tipo_ enumerado es un identificado que nombra el nuevo tipo definido.
Despus de definir un tipo enumerado, podemos declarar una o ms variables de
este tipo, de la forma:
enum tipo_enumerado [variable[, variable]];
A cualquier identificador de la lista se le puede asignar un valor inicial entero por
medio de una expresin constante. Los identificadores sucesivos tomaran valores
correlativos a partir de ste.
A los miembros de una enumeracin se les aplica las siguientes reglas:
/* enum.c
*/
#include <stdio.h>
enum colores
{
azul, amarillo, rojo, verde, blanco, negro
}
main()
{
enum colores color;
/* leer un color introducido desde el teclado */
printf(Color: );
scanf(%d, &color);
/* Visualiza un color */
printf(%d\n, color);
}
Ejecucin del programa:
Color: 3 [Enter]
3
Float
El tipo float se utiliza para declarar un dato en coma flotante de 32 bits en el
formato IEEE 754 (este formato utiliza 1 bit para el signo, 8 bits para el exponente
y 24 para la mantisa). Los datos d tipo float almacenan valores con una precisin
aproximada de 7 dgitos. Para especificar que una constante (un literal) es de tipo
float, hay que aadir al final de su valor la letra f o F.
El siguiente ejemplo declara las variables a, b y c, de tipo real de precisin simple:
float a = 3.121592F
float b = 2.2e -5F;
float c = 2/3 .0F /* 0,666667*/
Double
El tipo double se utiliza para declarar un dato en coma flotante de 64 bits en el
formato IEEE 754 (1 bit para el signo, 11 bits para el exponente y 52 para la
12
mantisa). Los datos de tipo doubl almacenan valores con una precisin
aproximada de 16 dgitos. Por omisin, una constante de tipo double.
El siguiente ejemplo declara las variables a, b y c de tipo real de precisin doble.
double a = 3.141592;
omisin*/
double b = 2.2e+5;
double c = 2.0/ 3.0
/*
una
constante
es
double
por
}
Ejecucin del programa;
c vale a
i vale 25
f vale 3.141600
13
d vale 2.717200
Tipos derivados
Los tipos derivados son construidos a partir de los tipos primitivos. Algunos de
ellos son: estructuras, uniones, matrices (arrays), punteros y funciones.
Bibliografa
http://mec21.etsii.upm.es/ayudainf/aprendainf/AnsiC/leng_c.pdf
http://www.exa.unicen.edu.ar/catedras/compila1/index_archivos/Introduccion.pdf
http://microe.udea.edu.co/~svillad/InformaticaI/Documentacion/Palabras
%20reservadas%20Lenguaje%20C.pdf
http://www.ecured.cu/index.php/Tokens
CEBALLOS, Francisco Javier, C/ C++ Curso de programacin, p.p 18-27.
http://www.cplusplus.com/
http://www.compuclasico.com/
C++ CMO PROGRAMAR
DEITEL, HARVEY M. Y PAUL J. DEITEL
PEARSON, EDUCACIN, Mxico 2009. Sexta edicin
14