Mallocing y reinicio de la matriz cada vez que se ejecuta la función

struct variables {

    unsigned int counter;
    char *bra;
    unsigned int maxb;
    int *findtheking;
    unsigned int numoright;
};

int getlen = 0; // I give getlen a value in another function
int solo = 0;
mat.bra = (char*)malloc(sizeof(char)*getlen);
mat.bra = '\0';

struct variables pal = { 0, '\0', 0, 0, 0 };
struct variables mat = { 0, '\0', 0 , 0, 0 };
struct variables all = { 0, '\0', 0,  0, 0 };
struct variables alle = { 0, '\0', 0 , 0, 0};

Visual Studio me dice que

mat.bra = (char*)malloc(sizeof(char)*getlen);
*mat.bra = '\0';

both necesita ';' Y no veo por qué. ¿Por favor ayuda

¿y será posible que malloc para mat.bra si yo

int matches(char* str, int len) {

getlen = strlen(str);


if (mat.counter >= strlen(str)) {
    if (mat.bra[strlen(str)-1] == '(') {
        mat.counter = 0;
        mat.bra[0] = '\0';
        return 0;
    }
    else if (mat.bra[strlen(str)-1]  == '0') {
        mat.counter = 0;
        mat.bra[0] = '\0';
        return 1;
    }


}
else {
    if (str[mat.counter] == '(') {
        mat.bra[len-1] = str[mat.counter];
        mat.counter++;
        matches(str, len - 1);

    }
    else if (str[mat.counter] == ')') {
        if (mat.bra[len] == '(') {
            mat.counter++;
            mat.bra[len] = '0';
            matches(str, len + 1);
        }
        else {
            mat.counter = 0;
            mat.bra[0] = '\0';
            return 0;
        }
    }
    else {
        mat.counter++;
        matches(str, len);
    }
}

}

tiene esta función debajo del primer fragmento de código?

Ejecutaré coincidencias en main.c, y esos códigos están en func.c

Estoy intentando ejecutar esta función coincide en main.c varias veces, y necesito que mat.bra tenga un tamaño diferente de strlen (str) cada vez que se ejecuta. ¿Es posible para mí malloc de esta manera?

Lo siento si mi pregunta es vaga, soy nuevo en la codificación. ¡Si algo necesita mejorar, dígame y trataré de elaborar más!

Respuestas a la pregunta(0)

Su respuesta a la pregunta