Inicializando struct, usando uma matriz

Eu tenho um par de matriz:

const string a_strs[] = {"cr=1", "ag=2", "gnd=U", "prl=12", "av=123", "sz=345", "rc=6", "pc=12345"};
const string b_strs[] = {"cr=2", "sz=345", "ag=10", "gnd=M", "prl=11", "rc=6", "cp=34", "cv=54", "av=654", "ct=77", "pc=12345"};

que, em seguida, preciso analisar para '=' e, em seguida, colocar os valores na estrutura. (a chave rc é mapeada para a chave fc na estrutura), que está na forma de:

struct predict_cache_key {
    pck() :
        av_id(0),
        sz_id(0),
        cr_id(0),
        cp_id(0),
        cv_id(0),
        ct_id(0),
        fc(0),
        gnd(0),
        ag(0),
        pc(0),
        prl_id(0)
    { }

    int av_id;
    int sz_id;
    int cr_id;
    int cp_id; 
    int cv_id;
    int ct_id;
    int fc;
    char gnd;
    int ag;
    int pc;
    long prl_id;
};

O problema que encontro é que as matrizes não estão em sequência ou na mesma sequência que os campos struct. Então, eu preciso verificar cada um e, em seguida, criar um esquema para colocar o mesmo na estrutura.

Alguma ajuda no uso de C ou C ++ para resolver o acima?

questionAnswers(7)

yourAnswerToTheQuestion