PDF de programación - El lenguaje de programación C

Imágen de pdf El lenguaje de programación C

El lenguaje de programación Cgráfica de visualizaciones

Actualizado el 14 de Marzo del 2019 (Publicado el 10 de Octubre del 2018)
5.855 visualizaciones desde el 10 de Octubre del 2018
378,8 KB
88 paginas
Creado hace 14a (30/09/2009)
Lenguaje C

Enrique Vicente Bonet Esteban

El lenguaje de programación C

Tema 1 - Introducción.

El lenguaje de programación C fue creado por Brian Kernighan y Dennis
Ritchie a mediados de los años 70. La primera implementación del mismo la realizó
Dennis Ritchie sobre un computador DEC PDP-11 con sistema operativo UNIX. C es
el resultado de un proceso de desarrollo que comenzó con un lenguaje anterior, el
BCPL, el cual influyó en el desarrollo por parte de Ken Thompson de un lenguaje
llamado B, el cual es el antecedente directo del lenguaje C. El lenguaje C es un
lenguaje para programadores en el sentido de que proporciona una gran flexibilidad de
programación y una muy baja comprobación de incorrecciones, de forma que el
lenguaje deja bajo la responsabilidad del programador acciones que otros lenguajes
realizan por si mismos. Así, por ejemplo, C no comprueba que el índice de referencia
de un vector (llamado array en la literatura informática) no sobrepase el tamaño del
mismo; que no se escriba en zonas de memoria que no pertenecen al área de datos del
programa, etc.

El lenguaje C es un lenguaje estructurado, en el mismo sentido que lo son otros
lenguajes de programación tales como el lenguaje Pascal, el Ada o el Modula-2, pero
no es estructurado por bloques, o sea, no es posible declarar subrutinas (pequeños
trozos de programa) dentro de otras subrutinas, a diferencia de como sucede con otros
lenguajes estructurados tales como el Pascal. Además, el lenguaje C no es rígido en la
comprobación de tipos de datos, permitiendo fácilmente la conversión entre diferentes
tipos de datos y la asignación entre tipos de datos diferentes, por ejemplo la expresión
siguiente es válida en C:

float a; /*Declaro una variable para numeros reales*/
int b; /*Declaro otra variable para numero enteros*/
b=a; /*Asigno a la variable para entera el numero real*/

Todo programa de C consta, básicamente, de un conjunto de funciones, y una
función llamada main, la cual es la primera que se ejecuta al comenzar el programa,
llamándose desde ella al resto de funciones que compongan nuestro programa.

Desde su creación, surgieron distintas versiones de C, que incluían unas u otras
características, palabras reservadas, etc. Este hecho provoco la necesidad de unificar el
lenguaje C, y es por ello que surgió un standard de C, llamado ANSI-C, que declara
una serie de características, etc., que debe cumplir todo lenguaje C. Por ello, y dado
que todo programa que se desarrolle siguiendo el standard ANSI de C será fácilmente
portable de un modelo de ordenador a otro modelo de ordenador, y de igual forma de
un modelo de compilador a otro, en estos apuntes explicaremos un C basado en el
standard ANSI-C.

El lenguaje C posee un número reducido de palabras reservadas (tan solo 32)
que define el standard ANSI-C. Estas palabras reservadas pueden verse en la tabla
siguiente:

auto
do
goto

break
double
if

case
else
int

char
enum
long

const
extern
register

continue
float
return

default
for
short

El lenguaje de programación C

signed
unsigned

sizeof
void

Tabla 1.1: Palabras reservadas del lenguaje C.

static
volatile

struct
while

switch

typedef

union

El lenguaje de programación C

Tema 2 - Identificadores, tipos de datos, variables

y constantes.

2.1 - Identificadores.

Antes de proceder a explicar los identificadores en C, es necesario resaltar que
C es un lenguaje sensible al contexto, a diferencia por ejemplo de Pascal, por lo cual, C
diferencia entre mayúsculas y minúsculas, y por tanto, diferencia entre una palabra
escrita total o parcialmente en mayúsculas y otra escrita completamente en
minúsculas.

En el lenguaje C, un identificador es cualquier palabra no reservada que
comience por una letra o por un subrayado, pudiendo contener en su interior letras,
números y subrayados. La longitud máxima de un identificador depende del
compilador que se este usando, pero, generalmente, suelen ser de 32 caracteres,
ignorándose todos aquellos caracteres que compongan el identificador y sobrepasen la
longitud máxima. Recuérdese, además, que al ser C sensible al contexto, un
identificador escrito como esto_es_un_ident y otra vez como Esto_Es_Un_Ident será
interpretado como dos identificadores completamente distintos.

2.2 - Tipos de datos, modificadores de tipo y modificadores

de acceso.

En C, toda variable, antes de poder ser usada, debe ser declarada, especificando

con ello el tipo de dato que almacenara. Toda variable en C se declara de la forma:

<tipo de dato> <nombre de variable> [, nombre de variable];

En C existen cinco tipos de datos según puede verse en la tabla siguiente:

Tipo de dato
char
int
float
double

void

Descripción.

Carácter o entero pequeño (byte)
Entero
Punto flotante
Punto flotante (mayor rango que
float)
Sin tipo (uso especial)

Tabla 2.2.1: Tipos de datos en C.

Algunos ejemplos de variables de C serían:

float a;
int b,c;
char caracter,otro_caracter;

El lenguaje de programación C

Existen, además, cuatro modificadores de tipo, los cuales se aplican sobre los
tipos de datos anteriormente citados. Los modificadores de tipo permiten cambiar el
tamaño, etc., de los tipos de datos anteriormente especificados. Estos modificadores,
que sintácticamente anteceden a la declaración del tipo de dato, son:

Modificador Tipos de actuación
signed
unsigned
long
short

int
int
double

char
char
int
int

Descripción

Con signo (por defecto)
Sin signo
Largo
Corto

Tabla 2.2.2: Modificadores de los tipos de datos en C.

Es por ello, que podemos declarar variables como:

unsigned char a;
long double b;
short int i;

Es posible, además, aplicar dos modificadores seguidos a un mismo tipo de
datos, así, es posible definir una variable de tipo unsigned long int (entero largo sin
signo). El rango de valores de que permite cada variable depende del sistema operativo
sobre el cual se trabaje (MS-DOS, Windows95/98/NT/2000, UNIX/Linux), por lo cual
conviene referirse al manual del compilador para conocerlo. De forma general, los
sistemas operativos de 16 bits (MS-DOS, Windows 16 bits) poseen un rango y los de
32 bits (Windows 32 bits, UNIX/Linux) otro.

Rango de valores posibles en (notación matemática)

16 bits

[-128 , 127]
[0 , 255]
[-32768 , 32767]
[0 , 65535]
[-32768 , 32767]

32 bits

[-128 , 127]
[0 , 255]
[-2147483647 , 2147483648]
[0 , 4294967295]
[-32768 , 32767]

[0 , 65535]
[-2147483647 , 2147483648]

[0 , 65535]
[-2147483647 , 2147483648]

[0 , 4294967295]
[-3.4E+38 , -3.4E-38], 0 ,
[3.4E-38 , 3.4E+38]
[-1.7E+308 , -1.7E-308], 0 ,
[1.7E-308 , 1.7E+308]
[-3.4E+4932 , -1.1E-4932], 0 ,
[3.4E-4932 , 1.1E+4932]

[0 , 4294967295]
[-3.4E+38 , -3.4E-38], 0 ,
[3.4E-38 , 3.4E+38]
[-1.7E+308 , -1.7E-308], 0 ,
[1.7E-308 , 1.7E+308]
[-3.4E-4932 , -1.1E+4932], 0 ,
[3.4E-4932 , 1.1E+4932]

Tipo de variable declarada
char / signed char
unsigned char
int / signed int
unsigned int
short int / signed short
int
unsigned short int
long int / signed long
int
unsigned long int
float

double

long double

Tabla 2.2.3: Rango de valores de las variables en C.

Además de los modificadores de tipo existen modificadores de acceso. Los
modificadores de acceso limitan el uso que puede realizarse de las variables
declaradas. Los modificadores de acceso anteceden a la declaración del tipo de dato de
la variable y son los siguientes:

El lenguaje de programación C

Modificador
const
volatile

Efecto
Variable de valor constante
Variable cuyo valor
externamente

es modificado

Tabla 2.2.4: Modificadores de acceso en C.

La declaración de una variable como const permite asegurarse de que su valor
no será modificado por el programa, excepto en el momento de su declaración, en el
cual debe asignársele un valor inicial. Así, si declaramos la siguiente variable:

const int x=237;

Cualquier intento posterior de modificar el valor de x, tal como x=x+5;,

producirá un error en tiempo de compilación.

La declaración de una variable como volatile, indica al compilador que dicha
variable puede modificarse por un proceso externo al propio programa (tal como la
hora del sistema), y por ello, que no trate de optimizar dicha variable suponiéndole un
valor constante, etc. Ello fuerza a que cada vez que se usa la variable, se realice una
comprobación de su valor.

Los modificadores const y volatile pueden usarse de forma conjunta en ciertos
casos, por lo cual no son excluyentes el uno del otro. Ello es posible si se declara una
variable que actualizara el reloj del sistema, (proceso externo al programa), y que no
queremos pueda modificarse en el interior del programa. Por ello, podremos declarar:

volatile const unsigned long int hora;

2.3 - Declaración de variables y alcance.

En C, las variables pueden ser declaradas en cuatro lugares del módulo del

programa:

• Fuera de todas las funciones del programa, son las llamadas variables globales,

accesibles desde cualquier parte del programa.

• Dentro de una función, son las llamadas variables locales, accesibles tan solo

por la función en las que se declaran.

• Como parámetros a la función, accesibles de igual forma que si se declararan

dentro de la función.

• Dentro de un bloque de código del programa, accesible tan solo dentro del
bloque donde se declara. Esta forma de declaración puede interpretarse como
una variable local del bloque donde se declara.

Para un mejor comprensión, veamos un pequeño programa de C con variables

declaradas de las cuatro formas posibles:

El lenguaje de programación C

#include <stdio.h>
int sum; /* Variable global, accesible desde cualquier parte */
/* del programa*/
void suma(int x) /* Variable local declarada como parámetro, */
/* accesible solo por la fun
  • Links de descarga
http://lwp-l.com/pdf13813

Comentarios de: El lenguaje de programación C (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad