14.C
int a[] = {10,11,12}, *p = &a[0];
Sabemos que la definición de p es un puntero de tipo Int, y p apunta a a[0];
Ejecutar *p++, según la prioridad del operador, equivale a primero p++, luego *p, en este momento p apunta a a [1];
p>*p += 1, lo que equivale a sumar 1 a la variable de memoria apuntada por p, es decir, a[1]+=1.
15.C
El motivo de A es que no se especifica el tamaño y no se asigna la lista de inicialización (es decir, int a[]={1,2,3}; ); B/ El motivo del error de D radica en el tamaño de la asignación de la variable. El valor de la variable se puede cambiar a mitad de camino. El tamaño de la matriz se determina durante la compilación y no se puede cambiar a mitad de camino. requisitos Para escribir de esta manera, puede usar const int b = 10;
18.A
El motivo está en su comentario. char indica que el valor es una variable de caracteres, es decir, en el sentido habitual, la asignación debe ser una cantidad de caracteres entre comillas simples.
B: Cadena C/D: Expresión ilegal.
Expresiones legales:
Número;
La cantidad de caracteres incluidos en ''; la cantidad de cadena incluida en "";
Existen variables declaradas y definidas en la parte anterior del código, como por ejemplo: int b;