Используйте __ int64 для получения 64-битных вычислений int в Visual C ++ - хотя и не уверен, понравится ли это GCC.
Вы можете создать заголовочный файл, который напечатает (скажем) MyInt64
для соответствующей вещи для каждого компилятора. Тогда вы можете внутренне работать с MyInt64
, и скомпилированный код будет правильным для каждой цели. Это довольно стандартный способ поддержки разных целевых компиляторов на одной исходной кодовой базе.
afai может сказать, long long
будет работать нормально для обоих, но я не использовал GCC, поэтому YMMV - см. здесь для информации GCC и здесь для Visual C ++.