2 つの文字列がある場合:
a = "1234"
b = "4321"
次のように 2 つの数値を加算できます。
for(i=0; i<width-1; i++){
sum = (a[width-2-i]-48) + (b[width-2-i]-48) + carry;
carry = 0;
if(sum > 9){
carry = 1;
sum-=10;
}
answer[i] = sum+48;
}
if(carry) answer[i++] = carry+48;
answer[i]= 0;
そしてそれを逆にします (幅は strlen(a) と同じです)。
次の場合、どうすれば同じことができますか?
a = "12345"
b = "4321"
メモリを再割り当てする必要がありますか? または何?
(ところで、私が解決しようとしている問題は、すべて50桁の多くの数字を使用しているため、私が理解しているように、strtoulまたはstrtoullは問題外です。これまでのコードは次のとおりです。)