If you want to have variables that can store big integers, I recommend taking a look at the keywords such as 'long' and 'unsigned' for variable type declaration in C++. Note that using these keywords can have their own drawbacks, but that's a problem to worry about for later.
For example, if one were to use these keywords like so,
unsigned long long int variable_name;
The variable, variable_name can store any integer between 0 and 2^64 - 1
On a side note, as a person that enjoys prime finding algorithms and C++, given the opportunity, I would love to work on this project with you.