es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo encontrar la longitud de una cadena específica en una matriz de puntero a cadenas?

¿Cómo puedo encontrar la longitud de una cadena desde una matriz de punteros a cadenas?

Por ejemplo, si quiero encontrar la longitud de la cadena “manzana”, ¿cómo puedo calcular su longitud? Intenté muchas formas, pero no pude. Si hago sizeof(str[0]), devuelve el tamaño del puntero (4 bytes en mi dispositivo de 32 bits). ¿Están almacenados en la ubicación de memoria uno al lado del otro o no?

const char *str[] = {
“manzana”, “pelota”, “gato”, “perro”, “mep”, “helsdf”
};

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para encontrar la longitud de una cadena en un array de punteros a cadenas, puedes usar la función strlen() de la biblioteca string.h. Simplemente pasa la dirección de la cadena como argumento de la función strlen(), como se muestra a continuación:

    const char *str[] = {
        "manzana", "pelota", "gato", "perro", "mep", "helsdf"
    };
    
    int longitud = strlen(str[0]);
    

    En el ejemplo anterior, longitud se le asignará el valor de 5, que es la longitud de la cadena “manzana”. Ten en cuenta que la función sizeof() devuelve el tamaño del puntero en sí mismo, no el tamaño de la cadena a la que apunta. Por lo tanto, no se puede usar para determinar la longitud de una cadena.

Comments are closed.