Karatsuba C++ implementation
If you prefer programming in C-style, I suggest to use C.
If you want to use any part of C++, I suggest to embrace it fully.

I'll review only the main method for now,
I'm sure a lot more reviews will come from others.



You don't need the \n here. You can just drop it, it will work the same way:


  scanf("%s\n%s", a, b);



The C++ equivalent:

std::cin &gt;&gt; a &gt;&gt; b;




This generates a compiler warning, for good reason:
the arguments of scanf should be pointers, but it's an int.
Why is this line there at all? I suggest to remove it.


  scanf("%d", 1);