__int128的读入与输出模板

0.0好像c++14可以用,其他的不知道,,自己的编译器编译不了就很难受,,



__int128 x;   //最高39//读入1//scanf("%lld",&x);    ---一开始我也很惊讶为啥能这么读入,,但是好像定义得定义在外面

//读入2:
inline __int128 read()
{
   int X=0,w=0; char ch=0;
   while(!isdigit(ch)) {w|=ch=='-';ch=getchar();}
   while(isdigit(ch)) X=(X<<3)+(X<<1)+(ch^48),ch=getchar();
   return w?-X:X;
}

//输出:
inline void print(__int128 x)
{    
   if(x<0){putchar('-');x=-x;}
   if(x>9) print(x/10);
   putchar(x%10+'0');
}
转自博客: 传送门

你可能感兴趣的:(模板,tips)