Unidad 4 vid Flashcards

1
Q

¿Qué es un puntero en Pascal?

A

Un puntero es una variable que contiene la dirección de memoria donde se encuentra almacenado un dato.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Cómo se define y manipula en Pascal una variable puntero?

A

Se debe definir el tipo de dato al que se apunta en la sección TYPE.
Declarar las variables punteros necesarias en la sección VAR.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Cuál es la ventaja de utilizar estructuras dinámicas en lugar de estáticas en Pascal?

A

La flexibilidad, ya que las estructuras dinámicas pueden adoptar diversas formas como árboles, listas, redes, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué tamaño de memoria ocupa una variable de tipo puntero en Pascal?

A

Una variable de tipo puntero ocupa una cantidad fija de memoria, independiente del tipo de dato al que apunta.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué procedimientos se utilizan en Pascal para la creación y destrucción de variables dinámicas?

A

Creación: New(puntero)
Destrucción: Dispose(puntero)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Cómo se realiza la creación de una variable dinámica en Pascal?

A

Utilizando la instrucción New(puntero), que reserva memoria y asigna la dirección de memoria al puntero.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Cómo se lleva a cabo la destrucción de una variable dinámica en Pascal?

A

Utilizando la instrucción Dispose(puntero), que libera la memoria asociada a la variable y deja indefinido el valor del puntero.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Cuáles son las operaciones básicas con variables referenciadas por punteros?

A

Las operaciones son:
Asignación
Lectura
Escritura
Todas las operaciones legales que se puedan realizar con el tipo referenciado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Cómo se denota el contenido de la variable referenciada por un puntero en Pascal?

A

Se denota con puntero^.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Cuáles son las operaciones válidas e inválidas con punteros en Pascal?

A
  • Operaciones válidas: Apnum1:=Apnum1, Apnum1=Apnum2
  • Operaciones no válidas: Apnum1:=Apchar, el valor nil.
    Ejemplo:
    TYPE
    VAR
    tApcar=^char;
    Apcar:tApcar;
    BEGIN
    New(Apcar);
    ReadIn(Apcar^); {Por ejemplo ‘B’}
    Apcar^:=Pred(Apcar^);
    Writeln(Apcar^);
    END
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Cómo se realiza la comparación entre punteros en Pascal y cuál sería el resultado en un caso específico?

A

La comparación se realiza comparando las direcciones, no los contenidos. Ejemplo: Apnum1=Apnum2 daría como resultado ‘false’ si apuntan a direcciones diferentes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Qué constante predefinida se utiliza para asignar ningún valor a un puntero en Pascal?

A

La constante predefinida nil. Ejemplo: apCar:= nil.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Podrías proporcionar un ejemplo de implementación de punteros en Pascal, incluyendo la creación, manipulación y destrucción de variables dinámicas?

A

Ver el código del programa punteros_01 que incluye la inicialización, añadir elementos, recorrer y liberar una lista enlazada utilizando punteros.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly