Por ejemplo int e INT. Acerca de estos dos, solo sé que int es el tipo fundamental e INT es el tipo de datos de Windows, ambos ganan 4 bytes en la memoria e INT se usa con la API de Windows.
Pero no entiendo cuál es la diferencia principal y adecuada entre ambos.
¿Ayúdame a entender esto completamente?
int es una palabra clave de idioma, INT no lo es.
El tamaño y el rango de valores que puede tomar un int están limitados, pero no fijados, por el estándar de C++.
INT es un tipo de datos definido por Windows que es un tipo integral con signo de 4 bytes con complemento a 2.
Con un compilador MSVC dirigido a Windows, es probable que sea typedef feed o #define d a int , ya que int en ese caso tiene las características requeridas.
Sería preferible usar std::int32_t ya que es multiplataforma, aunque no es necesario que un compilador lo admita.