Escolar Documentos
Profissional Documentos
Cultura Documentos
• Por ejemplo
char cadena1[] = "primero";
char cadena2[ 20 ];
cin >> cadena2;
• carácter nulo La constante tipo carácter que
representa el carácter nulo es '\0' (barra diagonal
inversa seguida de un cero).
• Todas las cadenas representadas mediante
arreglos de caracteres terminan con este
carácter.
• Programa 8.3
USO DE CONST CON
APUNTADORES
• Existen muchas posibilidades para usar (o no
usar) const con los parámetros de funciones.
• ¿Cómo elegir la más apropiada de estas
posibilidades?
• Hay que dejar que el principio del menor
privilegio sea nuestro guía.
• Siempre debemos otorgar a una función el
suficiente acceso a los datos en sus parámetros
para que pueda realizar su tarea especificada,
pero nada más.
4 MANERAS DE PASAR UN APUNTADOR
A UNA FUNCIÓN:
• Un apuntador no constante a datos no constantes
• Un apuntador no constante a datos constantes
• Un apuntador constante a datos no constantes
• Un apuntador constante a datos constantes
UN APUNTADOR NO CONSTANTE A
DATOS NO CONSTANTES
• Es el mayor nivel de acceso, se otorga mediante
los datos se pueden modificar a través del
apuntador desreferenciado, y el apuntador se
puede modificar para que apunte a otros datos.
• La declaración para dicho apuntador no incluye
const.
APUNTADOR NO CONSTANTE A
DATOS CONSTANTES
• Es un apuntador que se puede modificar para
apuntar a cualquier elemento de datos del tipo
apropiado, pero los datos a los que apunta no se
pueden modificar a través de ese apuntador.
APUNTADOR CONSTANTE A DATOS
NO CONSTANTES
• Es un apuntador que siempre apunta a la misma
ubicación de memoria
• los datos en esa ubicación se pueden modificar a
través del apuntador.
• Un ejemplo de dicho apuntador es el nombre de un
arreglo, el cual es un apuntador constante al principio
del arreglo.
• se pueden utilizar para recibir un arreglo como
argumento a una función que acceda a los elementos
de un arreglo, usando la notación de subíndices.
• Los apuntadores que se declaran como const se
deben inicializar a la hora de declararse.
APUNTADOR CONSTANTE A DATOS
CONSTANTES
• La menor cantidad de privilegio de acceso se
otorga mediante un apuntador constante a
datos constantes.
• Dicho apuntador siempre apunta a la misma
ubicación de memoria, y los datos en esa
ubicación de memoria no se pueden modificar
mediante el uso del apuntador.
• Así es como se debe pasar un arreglo a una
función que sólo lea el arreglo, usando la
notación de subíndices de arreglos, y no se
modifica el arreglo.
EL ALGORITMO DE ORDENAMIENTO
POR SELECCIÓN.
• fácil de programar, pero por desgracia ineficiente.
• En la primera iteración del algoritmo se selecciona el
elemento más pequeño en el arreglo y se intercambia
con el primer elemento.
• En la segunda iteración se selecciona el segundo
elemento más pequeño (que es el elemento más
pequeño del elemento restante) y se intercambia con
el segundo elemento.
• El algoritmo continúa hasta que en la última iteración
se selecciona el segundo elemento más grande y se
intercambia con el penúltimo subíndice, dejando el
elemento más grande en el último subíndice.
OPERADOR SIZEOF
• arreglo de cadenas.
• Cada entrada en el arreglo es una cadena, pero
en C++ una cadena es en esencia un apuntador
a su primer carácter, por lo que cada entrada en
un arreglo de cadenas es simplemente un
apuntador al primer carácter de una cadena.