• For both your result and result1 variable, you declare them as empty strings, but then you assign result[k] and result1[i]. This goes out of bounds, because result has 0 characters.
Everywhere that you have result[k] =, you should do result += instead. I think. This might not make it 100% correct yet, but at least you might be printing something now.
• Line 24: You are attempting to assign an integer (sum%10) to a character (result[k]). Perhaps you want (sum%10) + '0';
• Also, you assign k to be the length of result, but then you attempt to access result[k]. This is going out of bounds of the array (although in the case of an std::string, will produce a nullptr for result[result.length()]).
I suggest having better variable names. The difference between "result" and "result1" is not clear at a glance.
I also suggest starting with a smaller example.
e.g. First make sure "4" and "5" produces "9". Then see if "4" and "7" produces "11". Then work with 2-digit numbers, and so on.