Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Resumen informatica general, Esquemas y mapas conceptuales de Informática General

Resumen informatica general universitaria

Tipo: Esquemas y mapas conceptuales

2022/2023

Subido el 06/01/2023

jm.ramon.2018
jm.ramon.2018 🇪🇸

5 documentos

1 / 25

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Programación de Sistemas de
Navegación
TEMA 2.1. LENGUAJE C
SINTAXIS, COMPILADOR, Á MBITOS, TIPOS, OPERADORES, S ENTENCIAS DE CO NTROL, ENTRADA Y SALIDA, E RRORES
Programación de Sistemas de Navegación
Profesor: José Miguel Guerrero Hernández
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19

Vista previa parcial del texto

¡Descarga Resumen informatica general y más Esquemas y mapas conceptuales en PDF de Informática General solo en Docsity!

Programación de Sistemas de

Navegación

TEMA 2.1. – LENGUAJE C

S I N T A X I S , C O M P I L A D O R , Á M B I T O S , T I P O S , O P E R A D O R E S , S E N T E N C I A S D E C O N T R O L , E N T R A D A Y S A L I D A , E R R O R E S

Profesor: José Miguel Guerrero Hernández

Forma general programa en C

 Código fuente:

  • Formado por uno o varios ficheros
  • Debe ser compilado y enlazado

Preprocesador

 El preprocesador es el primer programa invocado por el compilador y

procesa directivas como #include, #define e #if

 El preprocesador reemplaza la línea #include <stdio.h> por el

contenido del archivo de cabecera del sistema con ese nombre. Dentro se declara, entre otras cosas, la función printf()

 Puede escribirse usando dobles comillas: #include "stdio.h". Esta

forma solía usarse para diferenciar los archivos de cabecera del sistema (<>) y los de usuario ("")

#include <stdio.h>

int main (void) { printf ("¡Hola Mundo!\n"); return 0; }

Comentarios

 Un comentario es una sección de texto cuyo objetivo es documentar

parte de un programa. Los comentarios se ignoran por el compilador. Un comentario simple comienza con dos barras de dividir

 Un estilo alternativo de comentarios en varias líneas es el formado

por barra y asterisco

 Los comentarios son fundamentales para la comprensión de un

programa

esto es un comentario de varias líneas */

// esto es un comentario

Declaración de variables

Variable : posición de memoria con nombre que se usa para mantener un

valor que puede ser modificado por el programa. La declaración de una variable tiene la sintaxis siguiente:

 Donde el prefijo puede ser:

  • static : indicando que sólo se mantiene una instancia de la variable
    • Si se declara en una función, el valor se mantiene en futuras ejecuciones dentro de la función
    • Si se declara fuera, el valor no es accesible para otros módulos o funciones fuera del fichero actual
  • extern : dota a la variable de alcance global a todo el programa (incluidas las

librerías externas). Se coloca en la declaración de variables pertenecientes a otros

módulos o funciones que vayan a ser utilizadas en el módulo o función actual

 Los prefijos extern y static no pueden ser utilizados en la misma

declaración

 El lenguaje C es sensible a mayúsculas y minúsculas , además, no se

pueden utilizar tildes

[prefijo] tipo identificador [=expresión inicialización];

Constantes

 Las constantes pueden ser:

  • Constantes definidas (simbólicas) : utilizando la directiva #define. El

preprocesador se encarga de sustituir la constante por su expresión o valor

asociado

  • Constantes declaradas : el cualificador const impide que el valor de una

variable pueda ser alterado

  • Constantes enumeradas : permite crear una lista de elementos relacionados.

Es posible utilizar ordinales para referenciar los elementos de la lista

(empezando en 0)

#define CTE valor;

enum DiaSemana { L, M, X, J, V, S, D }; // Tipo enum DiaSemana diaLibre = D; // Variable

const char ARROBA = '@'; const INT LIMITE = 2999; const char ARCHIVO[] = "salida.txt";

Ámbito de las variables

 El ámbito , es la zona del programa en el que una variable es conocida

 Variables locales :

  • Son conocidas solo en la función en la cual están definidas (ninguna otra

función tiene acceso a ellas)

  • La mayor parte de las funciones tienen una lista de parámetros. Los

parámetros de una función también son variables locales

  • Las variables locales comienzan su existencia cuando la función es llamada y

desaparecen cuando la función termina su ejecución

 Variables globales :

  • Son externas a todas las funciones, esto es variables globales que pueden ser

accedidas por cualquier función

  • Pueden ser utilizadas para comunicar información entre funciones
  • Las variables externas existen permanentemente y retienen su valores aun

después de que las funciones que las utilizan han terminado su ejecución

Ámbito de las variables

¿Por qué evitar el uso de variables globales?

 Varios módulos o funciones pueden interferir entre sí

  • Al programar somos predecibles. ¿Cuántas veces no escribimos programas con variables
como i, tmp, num, etc.? ¿Cuántas otras funciones que utilicemos, hechas por terceros, no
tendrán nombres de variables similares? Si utilizamos variables globales tendremos que
cuidarnos manualmente de no interferir con las variables que utilicen otros fragmentos del
programa

 Código más difícil de mantener:

  • El manejar variables globales nos obliga a documentarlas también de manera global, no sólo
para evitar los problemas que mencionamos, sino para facilitar la extensibilidad a futuro.
Utilizar variables de ámbito más limitado nos permite documentarlas siempre al inicio de
cada función o bloque

 Mayor uso de memoria:

  • El sistema operativo reclama el espacio utilizado por los datos tan pronto como estos dejan
de ser necesarios. Sin embargo, cuando las variables son globales, no se puede predecir que
los datos de una variable no volverán a ser necesitados
  • Al utilizar ámbitos más limitados, el sistema reclamará el espacio tan pronto salgamos del
bloque en que fueron creadas

 Salvo causa justificada siempre evitaremos el uso de variables globales

Operadores

 Seis tipos distintos de operadores :

  • Aritméticos : + - * / %  Suma, Resta, Multiplicación, División, Módulo
  • Lógicos :! && ||  Negación, Conjunción Y, Disyunción O
  • Relacionales : == != > < >= <=  Igual, Distinto, Mayor/menor (igual) que
  • Asignación : = ++ += = *= /= %=
  • Dirección : * (operador de contenido o indirección)

& (operador de referencia o dirección)

  • Movimiento : << >>, destinados a operaciones sobre bits

Sentencias de control: if/else

 La sentencia if/else permite comprobar si se da una determinada

condición:

Ejemplo:

meses mes; // meses: tipo enumerado con los meses del año ... if ((mes >= Junio) && (mes <= Agosto)) { esVerano = true ; } else { esVerano = false ; }

if (expresión_condicional) { /* las declaraciones se ejecutarán si la expresión booleana es verdadera / } else { / las declaraciones se ejecutarán si la expresión booleana es falsa */ }

Sentencias de iteración: while

 Los bucles, permiten la ejecución de un código reiteradas veces

 La condición debe de ser una expresión lógica, similar a la de la

sentencia if. Primero se evalúa la condición. Si el resultado es verdadero, se ejecuta el bloque de código. Luego se vuelve a evaluar la condición, y en caso de dar verdadero se vuelve a ejecutar el bloque. El bucle se corta cuando la condición da falso

 Ejemplo: imprimir los números de 0 a 99

while (condición) { declaraciones; }

int i = 0; while (i < 100) { printf("%d\n", i); i = i + 1; }

Sentencias de iteración: do...while

 Similar a while, pero con la diferencia de que el bucle do...while es un

se ejecuta al menos una vez

 Ejemplo: imprimir los números de 0 a 100

 Al evaluar la condición después, en este caso el 100 es mostrado

do { declaraciones; } while (condición)

int i = 0; do { printf("%d\n", i); i = i + 1; } while (i < 100)

Funciones de E/S formateada

 Las funciones de E/S sirven para la transferencia de información entre el

ordenador y los dispositivos de entrada/salida estándar, tales como un teclado y

un monitor

 Como norma general, el archivo de cabecera requerido para la entrada/salida

estándar se llama stdio.h

 La función scanf permite leer varios tipos de datos de una sola vez, tales como

enteros, números decimales o cadenas de caracteres. Cada nombre de variable

debe ser precedido por un ampersand (&), salvo en el caso de los arrays

 La función printf permite escribir cualquier combinación de valores numéricos,

caracteres sueltos y cadenas de caracteres

printf(cadena de control,arg1,arg2,...,argN);

scanf(cadena de control,arg1,arg2,...,argN);

#include <stdio.h>

Funciones de E/S formateada

 Ejemplo salida:

 Ejemplo entrada:

printf("Nombre: %s; Edad: %d; Altura: %5.2f cm", "Juan", 23, 1.70);

Nombre: Juan; Edad: 23; Altura: 1.70 cm

Carácter de conversión Significado del dato c Carácter d Entero decimal e Coma flotante f Coma flotante g Coma flotante h Entero corto o Entero octal s Cadena de caracteres u Entero decimal sin signo

Código

Salida

char nombre[10];

int edad;

float altura;

scanf("%s %d %f", nombre, &edad, &altura);

Código