Assim que eu criei a struct deu esse monte de erros, o que eu fiz de errado?
Assim que eu criei a struct deu esse monte de erros, o que eu fiz de errado?
`
struct mapa m;
struct mapa {
char** matriz;
int linhas;
int colunas;
};
Olá Pedro! Tudo joia?
Pelo que posso ver na imagem, parece que você está tentando usar uma struct
, mas não a declarou corretamente. Vamos revisar alguns pontos importantes:
Declaração da struct
:
Você precisa declarar a struct
antes de usá-la. Pelo código da imagem, você declarou uma struct x;
, mas não definiu o que essa struct
contém.
Definição da struct
:
Você precisa definir a estrutura da struct
antes de usá-la. Vou te dar um exemplo baseado no contexto da sua dúvida.
Aqui está um exemplo completo de como você pode declarar e usar uma struct
:
#include <stdio.h>
#include <locale.h>
// Definindo a struct
struct mapa {
char** matriz;
int linhas;
int colunas;
};
void leMapa(struct mapa* m) {
// Implementação da função leMapa
}
void imprimeMapa(struct mapa* m) {
// Implementação da função imprimeMapa
}
int main() {
setlocale(LC_ALL, ""); // Ativa o uso de acentos
struct mapa x; // Declarando uma variável do tipo struct mapa
x.linhas = 10;
x.colunas = 10;
char mapa[10][10];
x.matriz = (char**)mapa;
leMapa(&x);
imprimeMapa(&x);
return 0;
}
Alguns pontos importantes:
struct
: A struct
é definida no início do código.x
: Você declara x
como uma variável do tipo struct mapa
.struct
usando o operador ponto (.
).Além disso, certifique-se de que todas as funções que utilizam a struct
estejam corretamente definidas e que você passe a struct
como parâmetro para essas funções, se necessário.
Espero ter ajudado e bons estudos!
struct mapa m;
Eu estava esse declaração, conforme haviado te mostrado, removi o strcut e deixe assim:
mapa m;
E funcionou.