【发布时间】:2018-11-08 00:35:47
【问题描述】:
我想添加两个 char* 中的数字。 例如:
char aux1[100];
char aux2[100];
char answer[100];
aux1="913";
aux2="88";
answer= aux1+aux2; //1001
当然最后一行是错误的。 我尝试使用 atoi,但我不能使用字符串库。我要添加不能加入 int 或 long int 的数字。我只能使用 char* 并且答案必须在 char* 中。
减“-”也一样。如果是负数,则符号转到第一个位置 0。
我正在考虑将数字转换为数字并解决它,但我不知道。
【问题讨论】:
-
-2928182727193929287218838283828432983 无法加入int
-
这甚至不适合
long long int或int64。因此,除非您改用float或double,否则您将不得不使用支持算术运算的任意精度库。当数字为正时,逐个数字地处理事情很容易,但当涉及到负数时,就会变得棘手。最好让预先存在的库为您完成繁重的工作 -
这就是为什么应该使用 char*。该数字无法放入 long long int。
-
这就是为什么你应该使用预先存在的arbitrary-precision library
标签: c++ char character add subtraction