Определение архитектуры процессора во время компиляции

Какой самый надежный способ узнать архитектуру процессора при компиляции кода C или C ++? Насколько я могу судить, разные компиляторы имеют собственный набор нестандартных определений препроцессора (_M_X86 в MSVS,__i386__, __arm__ в GCC и т. д.).

Есть листандарт способ определить архитектуру, для которой я строю? Если нет, то есть ли источник для исчерпывающего списка таких определений для различных компиляторов, таких как заголовок со всеми образцами#ifdefs?

Ответы на вопрос(3)

Ваш ответ на вопрос