Informática I Código 2547100 Semestre 2013-1 Para Ingeniería Electrónica e Ingeniería de Telecomunicaciones Profesor: Sebastián Isaza.

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

PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++
Tema 4b Operadores.
Abstracción de Datos Arrays.
Informática I Código Semestre Para Ingeniería Electrónica e Ingeniería de Telecomunicaciones Profesor: Sebastián Isaza.
Programación I Teoría III
Direcciones, Arreglos y Argumentos de Funciones
Funciones. Programación, Algoritmos y Estructuras de Datos.
Tipos de Datos Básicos y Estructurados
Desarrollo de Aplicaciones para Internet
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.
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.
INFORMATICA I Arreglos 2 CLASE 18.
INFORMATICA I Funciones CLASE 13.
Programación Estructurada
VECTORES.
Unidad 3 Punteros.
Ingeniero Anyelo Quintero
¿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.
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.

Chapter 7 Functions Dale/Weems/Headington. 2 Tópicos Capítulo 7 l Writing a Program Using Functional Decomposition l Writing a Void Function for a Task.
Compiladores II ( /04/ :03) Tema 2. Generación de Código para Estructuras Complejas Lecciones 3 y 4.
Diseño de algoritmos “Punteros”
Paso de Vectores como Parámetros
1 Chapter 15 Pointers, Dynamic Data, and Reference Types Dale/Weems/Headington.
Características de “C”
Características de “C” Y Esta conformado por un Ambiente Integrado. Y Es un Lenguaje de Nivel medio. Y Es un compilador. YContiene un conjunto de palabras.
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
FUNCIONES EN C. SOBRE FUNCIONES... Caja negra in_1 in_N out_1 In_2 Función: Nombre. (Con el cual es invocada). Entradas. (Parámetros de la función). Salida.
Arreglos.
Programación III Clase 06 Funciones.
Unidad III Elementos del lenguaje C++
APUNTADORES EN C. MENU DEL DIA Repaso clase anterior Apuntadores. Eso pa que? Solución al problema: Funciones. Ventajas de trabajar un programa usando.
Prog. Univ. Rodríguez Rey, Pablo Funciones Programación I.
Índice. Revisando conceptos acerca de la memoria.
TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para.
1 Chapter 12 Arrays Dale/Weems/Headington. 2 Chapter 12 Topics l Declaring and Using a One-Dimensional Array l Passing an Array as a Function Argument.
Descomposición Modular. Funciones
Unidad VI Registros (estructuras, uniones y enumeraciones)
Tipo de Datos Básicos.
Informática Ingeniería en Electrónica y Automática Industrial
El lenguaje de programación C - Vectores y matrices -
Arrays Arreglos Prof. Gonzalo Pastor Vectores. Definición Un vector es un tipo de variable que puede guardar muchos valores Una variable sólo puede guardar.
FUNCIONES Conceptos básicos. Retorno de una función Clases de funciones. Paso de parámetros. Funciones y arrays.
Informática Ingeniería en Electrónica y Automática Industrial
Programación Técnica1UVM Tipos de Datos. Programación Técnica2UVM.
Programación en C para electrónicos
Punteros.
Elementos básicos del lenguaje
PUNTEROS Y REFERENCIAS
Funciones Definidas por el Programador
Programación III Clase 09 Apuntadores. Declaración de Punteros Declaración: type* id; Ejemplo: int* ptr; ptr contendrá entonces una dirección a un entero.
Los punteros Programación modular.
Registros Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
Computación II Capitulo VII Punteros. Presentación de la unidad Objetivos: –Ser capaces de utilizar punteros. –Comprender las relaciones entre punteros,
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings
Empleando apuntadores una función puede entregar múltiples resultados / /Esta función no funciona #include void intercambiaValores(float a, float b) {
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Paso de Parámetros a una Función Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de.
Informática Ingeniería en Electrónica y Automática Industrial
OBJETIVOS DEFINIR LA ESTRUCTURA DE ARREGLOS. DECLARAR ARREGLOS EN C.
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
Lenguaje de Programación II Prof. Rafael Montenegro B. Carrera: T.S.U en Informática Periodo: 2014-I.
2012-BM5A. Unos tips antes de empezar: C# es Case Sensitive (sensible a mayúsculas) Pepe ≠ pepe ≠ pEpE Las asignaciones se hacen con “=” y las comparaciones.
IntroducciÓn a los Arreglos (“arrays”) en C++
Transcripción de la presentación:

Informática I Código Semestre Para Ingeniería Electrónica e Ingeniería de Telecomunicaciones Profesor: Sebastián Isaza

El nombre de un arreglo es siempre la dirección del primer elemento de ese arreglo Si lista es un arreglo, entonces lo siguiente es verdadero lista == &lista[0] Tanto lista como &lista[0] representan la dirección del primer elemento del arreglo lista ¡y son constantes! Informática I (2013-1) – Prof. Sebastián Isaza2 Arrays and pointers

int *big = 0x2348; big++; short *small = 0x2348; small++; Informática I (2013-1) – Prof. Sebastián Isaza3 Stepping with pointers 0x2348 0x2349 0x234A 0x234B 0x234C 0x234D 0x234E 0x234F 0x2350 0x2351 0x2352 0x2353 0x2354 0x2355 0x2356 0x2357 big small 0x2348 0x234C 0x234A0x234C

short sm[5] short *ptr; ptr = sm; Informática I (2013-1) – Prof. Sebastián Isaza4 Arrays and pointers 0x2348 0x2349 0x234A 0x234B 0x234C 0x234D 0x234E 0x234F 0x2350 0x2351 0x2352 0x2353 sm[0] sm[1] sm[2] sm[3] sm[4] sm[5] ptr ptr+1 ptr+2 ptr+3 ptr+4 ptr+5

int sum(int *ar, int n); int sum(int *, int n); int sum(int ar[], int n); int sum(int [], int n); int sum(int *ar, int n){ // code } int sum(int ar[], int n){ // code } Informática I (2013-1) – Prof. Sebastián Isaza5 Arrays as function parameters

int sum (const int ar[], int n); int main(void){ int res; int values[4] = {1, 6, 8, 4}; res = sum (values, 4); } int sum (const int ar[], int n){ int i, total; for (total = 0, i = 0; i < n; i++){ total += ar[i]; } return total; } Informática I (2013-1) – Prof. Sebastián Isaza6 Protecting array contents prototipo de la función llamado de sum() en main() declaración de variables en main() definición de la función

Asignación: ptr = &var Derreferenciación: *ptr Obtener dirección de un apuntador: &ptr Suma/Resta de un entero a un apuntador: ptr+1 Incremento/Decremento de un apuntador: ptr++ Resta de apuntadores: ptr1-ptr2 Comparación de apuntadores: ptr1<ptr2 Informática I (2013-1) – Prof. Sebastián Isaza7 Pointer operations

int A[3][2]={ {12,18},{20,26},{28,34}}; A == ? A[0] == ? A + 1 == ? A[0] + 1 == ? *(A[0]) == ? *A == ? **A == *(*A) ==? Informática I (2013-1) – Prof. Sebastián Isaza8 Double indirection …… 0xFC5812 0xFC5C18 0xFC6020 0xFC6426 0xFC6828 0xFC6C34 0xFC70… A[2][0] A[0] A[1] A[2] A[0][0] A[0][1] A[1][0] A[1][1] A[2][1]