PUNTEROS Ó (apuntadores) EN LENGUAJE C

Slides:



Advertisements
Presentaciones similares
DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
Advertisements

MANUAL EXPRESS DE C J.M.sevilla.
Programación Científica
Repaso para la construcción del intérprete 2012
Procedimientos y Funciones
Clase 3: Punteros y Referencias
Programación I Teoría III
Direcciones, Arreglos y Argumentos de Funciones
Estructuras de datos. Programación, Algoritmos y Estructuras de Datos.
Tipos de Datos Básicos y Estructurados
Una variable en un programa es algo con un nombre, cuyo valor puede variar. La manera en que el compilador y enlazador maneja esto es asignando un bloque.
Punteros Universidad Nacional Mayor de San Marcos
Informática I Código Semestre Para Ingeniería Electrónica e Ingeniería de Telecomunicaciones Profesor: Sebastián Isaza.
INFORMATICA I Arreglos 1 CLASE 17.
Programación en C (Segunda Parte) DATSI, FI, UPM José M. Peña
Tema 1. Introducción a la programación (Lenguaje java).
PROGRAMACION DE ESTRUCTURAS DE DATOS
Ismael Camarero1. 2 ¿Qué es un PUNTERO?: Un puntero es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria.
ARREGLOS Estructuras de datos.
Estructuras de Datos Punteros y algo más.
Estructuras de Datos Memoria y Variables. Conceptos Computador: CPU + Memoria + Dispositivos E/S La memoria se encarga de almacenar los datos y los programas.
Unidad 3 Punteros.
Ingeniero Anyelo Quintero
Herramientas para el acceso directo a memoria en C++
¿Qué es un PUNTERO?: Un puntero es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No.
Vectores en java.
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.

Diseño de algoritmos “Punteros”
UNIVERSIDAD DE MANAGUA I CUATRIMESTRE INTRODUCCION A LA PROGRAMACION
SCJP Sun Certified Programmer for Java 6
LENGUAJE “C” Programación.
Semana 5 Subprogramas..
Introducción a los punteros
Curso Programación en Java
Capítulo 5. Punteros y Cadenas de Caracteres
UNIDAD V Arreglos y Cadenas
APUNTADORES EN C. MENU DEL DIA Repaso clase anterior Apuntadores. Eso pa que? Solución al problema: Funciones. Ventajas de trabajar un programa usando.
Índice. Revisando conceptos acerca de la memoria.
Archivos.
Estructuras.
 2003 Prentice Hall, Inc. All rights reserved. 1 Capítulo 4 - Arrays Índice del Capítulo 4.1Introducción 4.2Arrays 4.3Declaración de Arrays 4.4Ejemplos.
Descomposición Modular. Funciones
Unidad VI Registros (estructuras, uniones y enumeraciones)
PUNTEROS Ing Anghello Quintero.
Informática Ingeniería en Electrónica y Automática Industrial
TEORIA DE LA INFORMACION INGENIERO ANYELO QUINTERO.
Informática Ingeniería en Electrónica y Automática Industrial
Programación en C para electrónicos
Punteros.
Elementos básicos del lenguaje
PUNTEROS Y REFERENCIAS
APUNTADORES.
PROGRAMACIÓN MULTIMEDIA
Elementos básicos del lenguaje
Los punteros Programación modular.
Términos algoritmo diseñar algoritmo implementar algoritmo
Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 15/08/2006.
Computación II Capitulo VII Punteros. Presentación de la unidad Objetivos: –Ser capaces de utilizar punteros. –Comprender las relaciones entre punteros,
Contenido:  ¿Qué son los Punteros?  Los Procedimientos: New y Dispose.
Arreglos unidimensionales
UNIDAD 4: Introducción a la Lógica Computacional Objetivo : Interpretar y aplicar adecuadamente los fundamentos básicos de la estructura y funcionamiento.
PUNTEROS EN EL LENGUAJE C
Laboratorio de programación
MEMORIA DINÁMICA.
PROF. RAFAEL MONTENEGRO B. UNELLEZ-APURE Introducci Ó n a los Arreglos (“arrays”) en C++
Introducción al Lenguaje C (I) Tipos básicos, arrays y punteros Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión
Computación I :: Prof. Yeniffer Peña Lenguaje C Presentación Computación I.
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO FACULTAD DE INGENIERÍA COORDINACIÓN DE MATERIAS PROPEDÉUTICAS INGENIERÍA EN SISTEMAS ENERGÉTICOS SUSTENTABLES.
Transcripción de la presentación:

PUNTEROS Ó (apuntadores) EN LENGUAJE C

¿QUÉ ES UN PUNTERO? Un puntero es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No hay que confundir una dirección de memoria con el contenido de esa dirección de memoria.

DIRECCIONES DE MEMORIA Cuando una variable se declara se asocian 3 atributos. int n; /* asocia al nombre n, el tipo int y la dirección de alguna posición de la memoria donde se almacena el valor de n */ 0x4fffd34 printf(“%d”, n); n printf(“%d”, &n); int 75

EL CONCEPTO DE PUNTERO Tiene correspondencia con la vida diaria. Cuando se envía una carta por correo su información se entrega basada en un puntero (la dirección de esa carta). Cuando se telefonea a una persona, se utiliza un puntero (el número de teléfono que se marca) Un puntero en C es la dirección de una variable.

REGLAS QUE RIGEN A UN PUNTERO Un puntero es una variable como cualquier otra; Una variable puntero contiene un dirección que apunta a otra posición de memoria; En esa posición se almacenan los datos a los que apunta el puntero; Un puntero apunta a una variable de memoria.

RELACCION ENTRE *P Y P DIRECCION N El valor de un puntero es una dirección. La dirección depende del estado de la computadora en la cual se ejecuta el programa. Direccion de memoria alta p 1001 p 1000 n 75 100 0999 101 n 100 75 099 Dirección de memoria baja

DECLARACION DE PUNTEROS <tipo de dato apuntado> *<identificador de puntero> Ejemplos: int *ptr1; // puntero a un tipo de dato entero (int) long *ptr2; // Puntero a un tipo de dato entero largo (long int) char* ptr3; // Puntero a un tipo de dato char float *f; // Puntero a un tipo de tado float

INCIALIZACION Asignar memoria (estáticamente) int i; // define una variable i. int *p; // define un puntero p. p=&i; // asigna la dirección de i a p. El operador & devuleve la dirección de la variable a la cual se aplica *p =50; El asterisco delante de la variable puntero indica “el contenido de” de la memoria apuntada.

ARITMÉTICA DE PUNTEROS -A una variable puntero se le puede asignar la dirección de cualquier objeto. -A una variable puntero se le puede asignar la dirección de otra variable puntero (siempre que las dos señalen el mismo objeto) -A un puntero se le puede inicializar con el valor NULL -Una variable puntero puede ser restada o comparada con otra si ambas apuntan a elementos de un mismo array.

PUNTEROS A PUNTEROS Un puntero puede apuntar a otra variable puntero. ejemplo int valor _e = 100; int *ptr1 = &valor _e; int **ptr5 = &ptr1; valor _e = 95; *ptr1 = 105; **ptr5 = 99; 8000 ptr1 8080 8000 100 8081 ptr5 8082 8080 8083

PUNTEROS COMO ARGUMENTOS DE FUNCIONES Con frecuencia se desea que una función calcule y devuelva más de un valor, o bien se desea que una función modifique las variables que se pasan como argumentos. Cuando una variable es local se puede hacer visible a otra función pasándola como argumento. También se pueden mezclar paso por referencia y paso por valor. Es posible declarar punteros a cualquier tipo de variable, estructura o arreglo.

PROGRAMA EJEMPLO DE PUNTERO punteros.cpp punteros.exe

BIBLIOGRAFIA Joyanes Zahonero PROGRAMACION EN C McGraw Hill, 2001 http://www.atc.uniovi.es/telematica/2ac/Practicas/Interfaz-Win32-Sesion-1.pdf http://dis.um.es/~lopezquesada/documentos/IES_0607/FP/curso/UT8/UT8I.pdf