mptoi.c
来自「这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易」· C语言 代码 · 共 47 行
C
47 行
#include "os.h"#include <mp.h>#include "dat.h"/* * this code assumes that mpdigit is at least as * big as an int. */mpint*itomp(int i, mpint *b){ if(b == nil) b = mpnew(0); mpassign(mpzero, b); if(i != 0) b->top = 1; if(i < 0){ b->sign = -1; *b->p = -i; } else *b->p = i; return b;}intmptoi(mpint *b){ uint x; if(b->top==0) return 0; x = *b->p; if(b->sign > 0){ if(b->top > 1 || (x > MAXINT)) x = (int)MAXINT; else x = (int)x; } else { if(b->top > 1 || x > MAXINT+1) x = (int)MININT; else x = -(int)x; } return x;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?