|
No asignar suficiente espacio en un arreglo de caracteres para almacenar
el carácter NULL que da por terminado la cadena.
Imprimir una "cadena" que no contenga el carácter
de terminación NULL.
Procesar un carácter como si fuera una cadena. Una cadena
es un apuntador -probablemente un entero grande. Sin embargo un
carácter es un entero pequeño (valores ASCII del rango
0-255). En mucho sistemas, esto causar un error, porque la
direcciones bajas de memoria se reservan para fines especiales,
como manejadores de interruptores del sistema operativo y, por lo
tanto, se incurrir en "violaciones de acceso".
Pasar un carácter como argumento a una función, cuando
se espera una cadena.
Pasar una cadena como argumento a una función, cuando se
espera un car cter.
No agregar un carácter de terminación NULL al primer
argumento de un strncpy, cuando el tercer argumento es menor que
o igual a la longitud de la cadena del segundo argumento.
Suponiendo que strcmp y strncmp regresan 1 cuando sus argumentos
son iguales. Ambas funciones regresan 0 (valor falso en C) en caso
de igualdad. Por lo tanto, cuando se prueben dos cadenas buscando
igualdad, para determinar si las cadenas son iguales, el resultado
de la función strcmp strncmp deber ser comparado con
0.
Funciones de manipulación de cadenas distintas a memmove
que copian caracteres dan resultados indefinidos, cuando la copia
se efectúa entre partes de una misma cadena.
Puede causar error convertir en forma explicita (cast) un apuntador
de clase base a un apuntador de clase derivada, si a continuación
dicho apuntador es utilizado para hacer referencia a un objeto de
clase base que no tenga los miembros deseados de la clase derivada.
|