Inicialice las dos matrices a y b de la siguiente manera: char a[] = "ABCDEF"; char b[] = {'A', 'B', 'C', 'D', 'E', ' F
La respuesta es D, la matriz a es más larga que la matriz b
Razón: la longitud de la matriz a es 6 y la longitud de la matriz b es 7.
No existe una variable de cadena especial en el lenguaje C. Generalmente se usa una matriz de caracteres para almacenar una cadena. Las cadenas siempre terminan con '\0' como terminador.
Información ampliada:
Inicializador En C/C99/C, el inicializador es una parte opcional del declarador. Consiste en un '=' seguido de una expresión (o una. lista única que contiene múltiples expresiones entre paréntesis separadas por ',').
Descripción detallada:
Asigne una cadena a la matriz: u4 str1[]={"cxknmsl"};
De hecho, la matriz str1 está en memoria La situación de almacenamiento real es: c x k n m s l '\0'?
El sistema de compilación C agrega automáticamente el siguiente '\0'. Por lo tanto, al asignar un valor inicial con una cadena, generalmente no es necesario especificar la longitud de la matriz y el sistema lo manejará por sí solo. ?
Copie la cadena en la matriz de caracteres str1 a la matriz de caracteres str2, y el indicador de fin de cadena '\0' también se copia junto.