Me gustaría cambiar mi aplicación a LARGEADDRESSAWARE. Uno de los problemas a tener en cuenta es la aritmética del puntero, ya que la diferencia del puntero ya no puede representarse como firmado 32b.Detecta aritmética de punteros debido a LARGEADDRESSAWARE
¿Hay alguna manera de encontrar automáticamente todas las instancias de resta de puntero en un gran proyecto de C++?
Si no, ¿hay algún método manual o semiautomático de "mínimo esfuerzo" para lograr esto?
¿Quiere decir que está creando una aplicación para un sistema con un espacio de direcciones de 64 bits pero el compilador solo está utilizando punteros de 32 bits? –
"LARGEADDRESSAWARE" es un indicador de Windows32 en un encabezado ejecutable, que le dice al sistema operativo que el ejecutable puede manejar direcciones de 32 bits. Sin él, obtendrá direcciones de 31 bits (es decir, el bit superior siempre es 0), y luego la segunda mitad del espacio de direcciones se reserva para el sistema operativo. – MSalters