Tecnología

Inicio

Array de caracteres vs Cadena

En un lenguaje de programación, un tipo de datos de carácter es un carácter único. Algunos idiomas le permiten construir una matriz de caracteres para simular palabras o frases. Como alternativa, puede crear tipos de cadenas, que contienen la misma información, pero proporcionan diferentes funciones y métodos. matrices de caracteres son beneficiosos si, por ejemplo, se escribe un programa de búsqueda de palabras o palabras cruzadas. Sin embargo, las cadenas tienen más usos y se implementan en más lenguajes de programación que las matrices de caracteres.

Tamaño de almacenamiento

Una matriz de caracteres siempre tiene un espacio definido en la memoria. Por ejemplo, una matriz de 10 caracteres requiere espacio en la memoria para los 10 caracteres, independientemente de si utiliza todos ellos. Del mismo modo, si intenta guardar una palabra que tiene más de 10 caracteres en la matriz, cualquier cosa después del día 10 se corta y se pierde. Cuerdas tienen tamaños variables y la cantidad de espacio que ocupan en la memoria depende de la longitud de la cadena.

Longitud

Al escribir código, siempre conocer la longitud de una matriz de caracteres, ya que tiene que declarar explícitamente. Sin embargo, este no es el caso con las cadenas, especialmente para las cadenas que dependen de la entrada del usuario. Para averiguar la longitud de un array de caracteres, sólo hay que devolver el tamaño de la matriz misma, independientemente de los elementos de la matriz. Para averiguar la longitud de una cadena, es necesario llamar a una función de cadena definido, como "longitud" en C ++, que devuelve la longitud como un entero.

Indexación

Una de las ventajas de las matrices de caracteres más de cuerdas es que se puede especificar un índice de la matriz y obtener un carácter específico que desea utilizar una sola línea de código. No se puede hacer esto con una cadena en la mayoría de los lenguajes de programación porque las cadenas no mantienen un índice de sus personajes. Del mismo modo, se puede recorrer una matriz de caracteres y realizar varias acciones que no se puede con las cadenas, como contar cuántas veces la letra "s" aparece o reemplazar cada aparición de la letra "a". Una vez más, la mayoría de los otros lenguajes de programación no tienen este tipo de funcionalidad a su disposición en una forma tan sencilla.

Disponibilidad

lenguajes de programación más utilizados tienen clases de cuerda que le permiten crear las variables de cadena, incluyendo C ++, Java, Visual Basic, Perl, Python, e incluso lenguajes de script como JavaScript y PHP. Sin embargo, se utiliza mucho menos el tipo de datos char. Entre las lenguas mencionadas, solamente C ++ y Java tienen un tipo char definido explícitamente. Para crear una matriz de caracteres en los otros idiomas, es necesario crear una matriz de cadenas y limitar cada elemento de un carácter.