Red de conocimientos sobre prescripción popular - Enciclopedia de Medicina Tradicional China - Supongamos que la variable A es un número entero largo, entonces la siguiente declaración que no se puede ejecutar normalmente es

Supongamos que la variable A es un número entero largo, entonces la siguiente declaración que no se puede ejecutar normalmente es

La respuesta es c.

Esta pregunta implica dos cuestiones. Uno es el proceso de cálculo continuo y el otro es la cuestión de cuál será el resultado.

Hablemos primero de la primera pregunta. Al calcular A = 16384*2, primero calcule 16384*2, guarde el resultado del cálculo en una variable temporal y luego asigne el valor de esta variable temporal a A.

Déjame hablar sobre la segunda pregunta. ¿Cuál es el resultado de 16384*2? Es un número entero porque 16384 y 2 son ambos números enteros, por lo que el resultado del cálculo sigue siendo un número entero. Y = 16384 * 2 = 32768, excede el rango de enteros (-32768 a 32767), se desborda y se informará un error de "desbordamiento" durante el tiempo de ejecución.

Para ser claros, no es la variable A la que se desborda, sino la variable temporal.

¿Cómo utilizar la opción a? Debido a que 32768 excede el rango de números enteros, se trata como un número entero largo y el resultado aún está dentro del rango largo, por lo que es normal.

Debido a que el elemento B es 1,5, se trata como un solo tipo y es normal.

En cuanto a d, 190 y 2 son ambos números enteros, 190 2 = 36100, que parece haberse desbordado. De hecho, al calcular la potencia, los números anteriores y posteriores se procesan con doble precisión, por lo que no habrá desbordamiento.