miércoles, 29 de octubre de 2014

BLOGGER DE SISTEMAS OPERATIVOS

Historia de C

El lenguaje "C" fue diseñado en los años 60 por Dennis Ritchie. de los laboratorio Bell. surgió a partir de los lenguaje, BCPL Y B.
En 1978 kernighan y Ritchie publica su descripción en el libro 
"the C programaing".

Compilador: un traductor para que pueda traducir la codificación. A principio de los 80 Bjarme stroustrup desarrollo C++  en laboratorio Bell. C es un lenguaje de propósito general,es decir se puede desarrollar aplicaciones de diversas áreas. Es un lenguaje estructurado, tiene abundante cantidad de operadores.

  Variables y tipos de datos en C
Variable: es solo un nombre para identificar posiciones de memoria, este nombre
 de  la variable debe ser un identificador valido.
En las variables (posiciones de memoria) se guardan los datos usados por el 
programa  durante su ejecución, toda variable debe de ser declarada ante de 
utilizada. 

Tipos de variable 
variables globales: son las que se declaran después del llamado a las cabeceras,
pero ante de cualquier función, y son útiles para cual quier parte del programa  
variables locales: son aquellas que se declaran dentro de una función, y solo 
sirven para ser usadas dentro de esa función.

Tipos de datos
Los tipos de datos definen los métodos de almacenamientos disponible para 
representar  información, junto con la manera en que dicha información ha de 
ser interpretada.  
Los tipos de datos son indispensable para declaración de variables.

En C tenemos diferente tipos de datos



Nota sobre los tipos de datos: si omitimos la palabras "signed" o "unsigned" al
declarar un tipo de dato, el compilador automáticamente asume por default  que
es un tipo signed es decir que si al declarar el tipo de dato simplemente 
colocamos, por ejemplo, "int", entonce el compilador asumirá que hemos 
declarado un signed int. 

Un programa simple en c++ 
// mi primer programa en c++ 
# include <ios treeam.h>
int mainnc)
{
cout<< "Estoy escribiendo mi primer programa en c++/n";
return 0;
}

La estructura secuencial

Esta definida por el flujo de control automático de un programa. De manera 
natural, al menos que otra cosa se indique, la computadora ejecuta las lineas de 
código en el orden en que fueron escrita. El control del programa fluye de la 
linea anterior a la linea siguiente.

La estructura de selección

Se basan en una declaración condicional. Si es verdadera cierta lineas 
del código son ejecutadas. Si tal declaración es falsa, esas lineas no serán 
ejecutadas. Las dos estructuras de selección mas comunes son:  
Si-Entonces (If-Then) y Si-Entonces-de lo contrario(If-Else).

Estructuras de datos estáticas
Una estructura de datos se clasifica como estáticos o dinámico teniendo en 
cuenta que la memoria se asigna a la misma. Si la memoria se asigna a la 
estructura de datos al compilador, que se conoce como estructuras de datos 
estática. por otro lado, si la memoria para una estructura de datos asigna en 
tiempo de ejecución .

Estructura Estática: es aquella que durante la ejecución de un programa su valor 
no cambia, por ejemplo listas, vectores, matrices, pilas, colas y lista enlazadas.

Estructura Dinámica: Es aquella que durante la ejecución de un programa su 
valor puede cambiar.

modularidad en C

Un principio amplia mente difundido e importante para resolver problemas es el 
de “dividir para reinar”, es decir  separar el problema en partes, en problemas 
más pequeños, para así enfrentarlos y resolverlos en un tamaño más accesible y 
fácil de manejar Este principio tiene una directa aplicación en la programación de
 computadoras, para lo cual muchos lenguajes  de programación cuentan con 
una característica adecuada.

Estos lenguajes permiten escribir programas compuestos de porciones o partes 
que se conocen como módulos, muchas veces nombrados también como
 subprogramas, subrutinas, procedimientos, funciones, entre otros. En todos los
 casos, los principios generales y elementales que los gobiernan son los mismos,
 aún cuando algunos tengan características distintas y mayores o menores 
prestaciones: todos permiten separar un programa en partes más pequeñas y 
re usar esos trozos de programa o módulos ya escritos para resolver problemas
 similares. 

Las funciones en C: en C, los módulos se llaman funciones. Un programa C,
típica mente, se crea combinando el uso de funciones definidas por el usuario,
que son funciones escritas por el programador, y funciones predefinidas, que 
son las que ya vienen en las bibliotecas del lenguaje C. Si bien, estas últimas, no
forman parte estrictamente del lenguaje, siempre vienen provistas con el 
compilador, brindando al programador un gran número de funciones, de 
entrada/salida, para manejo de strings, de caracteres, para cálculos
matemáticos, entre otras. Por ejemplo, las funciones printf y scanf, que hemos
usado en los ejemplos anteriores, son funciones predefinidas de la biblioteca 
estándar stdio.h. 

Puntero

Un puntero es una variable que contiene la direccion de memoria de un dato o de
otra variable que contiene la direccion de memoria de una dato o de otra variable 
que contiene al dato. Quiere esto es decir, que el puntero apunta al espacio fisico
donde esta el dato o la variable. Los punteros se pueden utilizar para referencias 
y manipular estructuras de datos, para referenciar bloques de memoria 
asignado dinámica mente y para proveer el paso de argumentos por referencias 
en las llamadas a funciones.

muchas de las funciones estándares de C, trabajan con punteros, como es el 
caso del scanf o strcpy esta reciben o devuelve un valor que es un puntero. por 
ejemplo A scanf se le pasa la direccion de memoria del dato a leer (esto es un 
puntero )




   




                                               



  

No hay comentarios:

Publicar un comentario