Participación de objeto de operación de tipo sin signo de C ++ en la conversión de tipo

  Cuando el tipo de objeto de operación de un operador es inconsistente, y uno de los objetos de operación es un tipo sin signo, esta conversión de tipo debe realizarse en consecuencia. En cuanto al resultado de la conversión de tipo, depende del tamaño relativo de cada tipo de entero en la máquina.
  
  Cuando el tipo de objeto de operación de un operador es inconsistente y uno de los objetos de operación no tiene signo, se divide en las siguientes situaciones:
  
  Cuando el objeto de operación del tipo sin signo es mayor que el objeto de operación del tipo con signo, se firmará Después de convertir el tipo al tipo sin signo correspondiente, se realiza la operación. Para conocer las reglas de conversión, consulte la conversión de tipos con signo en tipos sin signo en mi blog C ++.
  
  Cuando el objeto de operación del tipo con signo es más grande que el objeto de operación del tipo sin signo, la situación será un poco más complicada Algunos:
  
  1. Si el rango de valores del tipo sin signo en la máquina está dentro del rango de valores del tipo con signo, convierta el objeto del tipo sin signo en el tipo con signo para la operación;
  
  2. Si la máquina El rango de valores que puede representar el tipo sin signo excede el rango de valores de este tipo con signo, y luego el objeto del tipo con signo debe convertirse al tipo sin signo para la operación.
  
  Nuevamente, no mezcle tipos con y sin signo, porque mezclar tipos con y sin signo a menudo genera resultados muy diferentes a nuestras expectativas.

Supongo que te gusta

Origin www.cnblogs.com/zhenhua1618/p/12729626.html
Recomendado
Clasificación