如何将二进制字符串转化为gray code字符串

各位大佬好,有谁可以帮我把这两个函数写全吗,分别是把二进制字符串转化为gray code字符串和把gray code字符串转化为二进制字符串(不要修改原有代码)?非常感谢!!!

#include<string>
using namespace std;

string binarytoGray(string binary) {


    return "-1";
}

string graytoBinary(string gray) {


    return "-1";
}

https://www.cnblogs.com/findumars/p/5346126.html

https://blog.csdn.net/jingfengvae/article/details/51691124