Programación: Lenguajes



Monografias.com

Introducción

C es un lenguaje de programación de propósito general que

ofrece economía sintáctica, control de flujo y estructuras sencillas y un buen conjunto de operadores. No es un lenguaje de muy alto nivel y más bien un lenguaje pequeño, sencillo y no está especializado en ningún tipo de aplicación. Esto lo hace un lenguaje potente, con un campo de aplicación ilimitado y sobre todo, se aprende rápidamente. En poco tiempo, un programador puede utilizar la totalidad del lenguaje.

Este lenguaje ha sido estrechamente ligado al sistema operativo UNIX, puesto que fueron desarrollados conjuntamente. Sin embargo, este lenguaje no está ligado a ningún sistema operativo ni a ninguna máquina concreta. Se le suele llamar lenguaje de programación de sistemas debido a su utilidad para escribir compiladores y sistemas operativos, aunque de igual forma se puede desarrollar cualquier tipo de aplicación.

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)

Tipos de lenguajes de programación

Lenguaje en C

Es un lenguaje de programación originalmente desarrollado por Dennis M. Ritchie entre 1969 y 1972 en los Laboratorios Bell, como evolución del anterior lenguaje B, a su vez basado en BCPL.

Se trata de un lenguaje de tipos de datos estáticos, débilmente tipificado, de medio nivel pero con muchas características de bajo nivel. Dispone de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de

construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar código en ensamblador con código C o acceder directamente

a memoria o dispositivos periféricos.

DEFINICION 1 ., E un lenguaje de alto nivel (puesto que es estructurado y posee sentencias y funciones que simplifican su funcionamiento) .

DEFINICION 2 Es un lenguaje de programación de propósito general que ofrece economía sintáctica, control de flujo y estructuras sencillas y un buen conjunto de operadores. No es un lenguaje de muy alto nivel y más bien un lenguaje pequeño, sencillo y no está especializado en ningún tipo de aplicación.

DEFINICION 3 I Es el lenguaje de programación de propósito general asociado al sistema operativo UNIX I Trata con objetos básicos como caracteres, números . ; también con bits y direcciones de memoria I Posee una gran portabilidad I Se utiliza para la programación de sistemas: construcción de intérpretes, compiladores, editores de texto, etc.

Monografias.com

Características

Propiedades

(como un empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen como un todo (en una única variable "empleado").

Monografias.com

Carencias

el Recolector de basura de Boehm.

Aunque la lista de las características útiles de las que carece C es larga, este factor ha sido importante para su aceptación, porque escribir rápidamente nuevos compiladorespara nuevas plataformas, mantiene lo que realmente hace el programa bajo el control directo del programador, y permite implementar la solución más natural para cada plataforma. Ésta es la causa de que a menudo C sea más eficiente que otros lenguajes. Típicamente, sólo la programación cuidadosa en lenguaje ensamblador produce un código más rápido, pues da control total sobre la máquina, aunque los avances en los compiladores de C y la complejidad creciente de los microprocesadores modernos han reducido gradualmente esta diferencia.

En algunos casos, una característica inexistente puede aproximarse. Por ejemplo, la implementación original de C++ consistía en un preprocesador que traducía código fuente C++ a C. La mayoría de las funciones orientadas a objetos incluyen un puntero especial, que normalmente recibe el nombre "this", que se refiere al objeto al que pertenece la función. Mediante el paso de este puntero como un argumento de función, esta funcionalidad puede desempeñarse en C. Por ejemplo, en C++ se puede escribir:

Monografias.com

Donde el argumento stack es un puntero a una struct equivalente al puntero this de C++, que es un puntero a un objeto.

Estructura básica de un programa en C

El programa más sencillo que se puede escribir en C es el siguiente: main( )

{

}

Como nos podemos imaginar, este programa no hace nada, pero contiene la parte más importante de cualquier programa C y además, es el más pequeño que se puede escribir y que se compile correctamente. En el se define

la función main, que es la que ejecuta el sistema operativo al llamar a un programa C. El nombre de una función C siempre va seguida de paréntesis, tanto si tiene argumentos como si no. La definición de la función está formada por un bloque de sentencias, que esta encerrado entre llaves {}.

Un programa algo más complicado es el siguiente:

#include main( )

{

printf("Hola amigos!n");

}

Con el visualizamos el mensaje Hola amigos! en el terminal. En la primera línea indica que se tengan en cuenta las funciones y tipos definidos en la librería stdio (standard input/output). Estas definiciones se encuentran en el fichero header stdio.h. Ahora, en la función main se incluye una única sentencia que llama a la función printf. Esta toma como argumento una cadena de caracteres, que se imprimen van encerradas entre dobles comillas " ". El símbolo n indica un cambio de línea.

LENGUAJE c++

Es un lenguaje de programación diseñado a mediados de los años 1980

por Bjarne Stroustrup. La intención de su creación fue el extender al lenguaje de programación C mecanismos que permiten la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.

Posteriormente se añadieron facilidades de programación genérica, que se sumaron a los paradigmas de programación estructurada y programación orientada a objetos. Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma.

A continuación se cita un programa de ejemplo Hola mundo escrito en C++:

Monografias.com

C++ tiene los siguientes tipos fundamentales:

Monografias.com

Monografias.com

Ventajas

Desventajas

Monografias.com

Bibliotecas y descripciones de uso

Nombre de Biblioteca

Descripción

assert.h

Es proporcionar una definición de la macro assert, que imprime un mensaje de error y aborta el programa

alloc.h

Existen funciones para asignar, liberar memoria, u obtener información de bloques de memoria.

ctype.h

Son funciones que nos permiten conocer la naturaleza de un carácter, o bien para convertir de mayúsculas a minúsculas y viceversa; y valores enteros a códigos ASCII.

dir.h

Esto permite ordenar, crear, modificar, mover y eliminar directorios

errno.h

Representa los números de error, después que ocurre un error se puede consultar el valor de la variable del sistema deerrno para obtener más información sobre ese error.

float.h

Define los límites de los tipos de coma flotante

limits.h

Define los límites de los diferentes tipos de enteros

math.h

Contiene las funciones matemáticas estándar utilizadas en C y C++

setjmp.h

Define el tipo de jmp_buf para algunas funciones.

signal.h

Contiene funciones de estado.

stdarg.h

Define funciones que pueden ser llamadas con diferentes números de argumentos, de modo que se pueda escribir f(a) y f(a,b).

stdef.h

Se definen algunos tipos especiales

stdio.h

Incorporan las funciones de Entrada - Salida E/S estandar, tipos y macros

stlib.h

Declara funciones que son útiles para diferentes propósitos, en especial de búsqueda y ordenación.

string.h

Este archivo contiene funciones para manejo de cadenas de caracteres.

time.h

Contiene funciones relativas a fechas y horas

Elementos de un programa en C

Monografias.com

Monografias.com

Monografias.com

a

Alerta

b

Espacio atrás

f

Salto de página

n

Salto de línea

r

Retorno de carro

t

Tabulación horizontal

v

Tabulación vertical

\

Barra invertida

'

Comilla simple

"

Comillas dobles

OOO

Visualiza un carácter cuyo código ASCII es OOO en octal

xHHH

Visualiza un carácter cuyo código ASCII es HHH en hexadecimal

Tipos básicos y variables

Los tipos de datos básicos definidos por C son caracteres, números enteros y números en coma flotante. Los caracteres son representados por char, los enteros por short, int, long y los números en coma flotante por float y double.

Características

Los tipos básicos disponibles y su tamaño son:

Char

Carácter

(normalmente 8 bits)

Short

Entero corto con signo

(normalmente 16 bits)

Int

Entero con signo

(depende de la implementación)

Unsigned

Entero sin signo

(depende de la implementación)

Long

Entero largo con signo

(normalmente 32 bits)

Float

Flotante simple

(normalmente 32 bits)

Double

Flotante doble

(normalmente 64 bits)

La palabra unsigned en realidad es un modificador aplicable a tipos enteros, aunque si no se especifica un tipo se supone int. Un modificador es una palabra clave de C que indica que una variable, o función, no se comporta de la forma normal. Hay también un modificador signed, pero como los tipos son por defecto con signo, casi no se utiliza.

Monografias.com

TIPOS DE CONSTANTES

. Constantes enteras: es un valor entero, consistente en una secuencia de dígitos y pueden escribirse en tres sistemas numéricos ( decimal (10), octal (8), hexadecimal (16). Ejemplo: 0 1 743 5280 32767.