Mesas de cadena son una estructura de datos en el C y C + + lenguaje de programación . En estos idiomas , las cadenas son secuencias de caracteres , y las secuencias pueden ser de cualquier longitud. La construcción de una mesa en la que todas las entradas son diferentes longitudes podría lograrse dejando suficiente espacio para la palabra más larga posible en cada posición de la tabla , pero esto sería perder un montón de espacio. Tablas de cadenas evitar el desperdicio de espacio simplemente escribiendo todas las cadenas en secuencia con el carácter especial '\\ 0 ' entre cada cuerda. Para hacer referencia a una cadena, sólo tiene que saber dónde empieza. Instrucciones
1
Escriba el código de "char StringTable (1000), " la creación de una tabla de cadenas que contiene 1000 caracteres. Al configurar la tabla de cadenas , también tendrá que establecer un " puntero ", que apunta a la siguiente dirección disponible en la tabla de cadenas . Para ello, escribe el código: "int p = 0 , " y cada vez que se ponga una palabra de una frase en la tabla de cadenas , agregue la longitud de la cadena de P , por lo que P siempre te dice dónde agregar la siguiente palabras
2
Escriba el código : " int DisplacementTable ( 100 )," para establecer un desplazamiento que contendrá 100 números. . A medida que introduce las palabras en la tabla de cadenas , que va a ingresar un número en la tabla de desplazamiento . Por ejemplo, si el puntero P es igual a 147 cuando se agrega una palabra de la tabla de cadenas , poner el número 147 en la tabla de desplazamiento
3
Convertir cualquier letra en cualquier palabra para la de la memoria que lo contiene mediante la búsqueda a través de la tabla de cadenas hasta que encuentre una coincidencia, contando el número de '\\ 0 ' caracteres. Por ejemplo , si va a convertir las letras " abc " a un número que se escribiría el código: "target = 'abc ' , k = 0 ; for (i = 0 ; i LT 1000 , i + +) {if StringTable ( i ) == DisplacementTable objetivo de rentabilidad ( k ), si StringTable ( i ) == ' \\ 0 ' k + + , . "Esto va a buscar a través de la tabla de cadenas para las cartas de destino y devolver el número que corresponde a la dirección del objetivo