You can stop the overflow warning by not using int, use unsigned long long - add ULL to the ends of your literal numbers:
auto arr = new int[80000ULL * 80000ULL];
I would recommend using a std::vector rather than a raw dynamic array:
auto vec = std::vector<int>(80000ULL * 80000ULL);
Your std::bad_alloc means you don't have enough memory....
And the thing I want to do is to create a social network's edge matrix.
You can look into using a "sparse matrix". If most of the locations in your array are empty you can use a data structure that records only the occupied cells' values.
A crude example would be to use a std::map<std::size_t, std::map<std::size_t, int>> but there are some dedicated libraries out there that will do a better job.
For example the Eigen Library. (props @yar)